android修改屏幕大小设置,android mediaplayer 视频修改视频大小 (屏幕尺寸mediaPlayer =......
1 主要是通过更改view 的大小来改变视频的大小。
2 在视频初始化时获得视频的高宽都为0 ,这个必须要注意,必须播放后延时 修改view 大小
3 sufaceview 的布局类是 android.widget.LinearLayout.LayoutParams 这个必须注意(在设置布局时一定要注意父对象的类型)
4 在 sufaceview surfaceChanged事件中加入 mediaPlayer.setDisplay(arg0) , setDisplay 方法在任意时刻都是可以调用的
try {
Log.e("m3u8", mediapath);
mediaPlayer = new MediaPlayer();
// 开始准备播放
uiHandler.sendMessage(uiHandler
.obtainMessage(MediaPlayerMessage.PREPARE));
// 设置媒体的路径
mediaPlayer.setDataSource(mediapath);
// 设置边播放变缓冲
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.prepareAsync();
} catch (Exception e) {
// TODO: handle exception
Log.e("meidaplayer err ", e.toString());
}
/**
* 播放器异常事件
*/
mediaPlayer.setOnErrorListener(new OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
// TODO Auto-generated method stub
mediaPlayer.release();
return false;
}
});
//视频准备完成 可以播放
mediaPlayer.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
// TODO Auto-generated method stub
try {
mp.start();
//给ui 界面发送消息 这里有个延时是设置 如果不设置延时 会出现 获得视频的高宽为零的文件
uiHandler.sendEmptyMessageDelayed(MediaPlayerMessage.SETSIZE, 1000);
} catch (Exception e) {
// TODO: handle exception
Log.e("start mediaplayer", e.toString());
}
}
});
case MediaPlayerMessage.SETSIZE:
int mVideoWidth = mediaPlayerView.mediaPlayer.getVideoWidth();
int mVideoHeight = mediaPlayerView.mediaPlayer.getVideoHeight();
int width=_frameLayout_main.getWidth();
int height=_frameLayout_main.getHeight();
android.widget.LinearLayout.LayoutParams sufaceviewParams = (android.widget.LinearLayout.LayoutParams) mediapaly_sufaceview
.getLayoutParams(); if ( mVideoWidth * height > width * mVideoHeight ) {
//Log.i("@@@", "image too tall, correcting");
sufaceviewParams.height = width * mVideoHeight / mVideoWidth;
} else if ( mVideoWidth * height < width * mVideoHeight ) {
//Log.i("@@@", "image too wide, correcting");
sufaceviewParams.width = height * mVideoWidth / mVideoHeight;
}else{
sufaceviewParams.height=height;
sufaceviewParams.width = width;
}
sufaceviewParams.gravity=Gravity.CENTER;
mediapaly_sufaceview.setLayoutParams(sufaceviewParams);
break;
//更在 surface 大小后事件 @Override
public void surfaceChanged(SurfaceHolder arg0, int arg1, int arg2, int arg3) {
// TODO Auto-generated method stub
Log.e("Surface h w", String.valueOf(arg2) + " " + String.valueOf(arg3));
if (mediaPlayer != null) {
mediaPlayer.setDisplay(arg0); }
}
android修改屏幕大小设置,android mediaplayer 视频修改视频大小 (屏幕尺寸mediaPlayer =......相关推荐
- 小米手机android目录在哪里设置字体,在哪里修改小米手机的字体大小
在哪里修改小米手机的字体大小 年轻人视力比较好,可以适应得了小米手机默认的字体大小.但是老年人容易远视,需要看大号的字体,现在小编就来教大家修改字体的方法. 具体如下: 1. 首先,我们登录手机的&q ...
- android控制台字体大小设置,Android studio 4.1 豆沙护眼色配置、字体大小设置、内存大小设置...
1.左边目录栏颜色配置: 2.代码编辑区域背景色设置 3.控制台背景色设置 4.菜单栏.工具栏.左边栏字体大小设置 6.修改内存大小.显示内存 例如:修改android-studio/bin/stud ...
- android 界面大小设置在哪里,移动应用界面设计的尺寸设置及规范
刚接触移动应用的界面设计,最先跳入脑海的疑问是:画布尺寸设计多大(特别是Android).图标和字体大小怎么定.需要设计多套设计稿么.如何切图以配合开发的实现? 本篇将结合iOS和android官方的 ...
- android studio app字体大小设置,Android Studio App设置TextView文字内容大小颜色
设置TextView文字内容大小颜色 1.第一种方法在activity_main.xml李设置,Java文件不用改: android:text="这里是文字" android:te ...
- android 横屏竖屏设置,Android中强制设置横屏与竖屏,与横竖屏生命周期的设置
许多小的知识点,是面试中经常会被提问到的,面试题也方式也会不一样,比如,让你在配置文件中设置Activity 为竖屏模式,答题方式是把相关的配置节点代码也给写出来,多少有点懵逼... 全屏 在Acti ...
- 【错误记录】未安装该应用 ( 在 Android 12 之后 组件设置 android:exported=“false“ 属性 )
文章目录 一.报错信息 二.解决方案 一.报错信息 报错信息 : 点击应用图标后 , 应用并未启动 , 并弹出 " 未安装该应用 " 提示信息 ; 二.解决方案 排查了一下相关地方 ...
- android studio怎么设置,android studio快捷键如何设置 android studio快捷键设置方法
Android studio的快捷键是一个很方便的存在,在编程的时候,我们都更习惯使用键盘,快捷键的操作可以提高编程效率,那么android studio快捷键如何设置呢,下面来看看设置方法. 快捷键 ...
- android phone恢复出厂设置,Android手机正确恢复出厂设置方法
Android手机正确恢复出厂设置方法 作为一款智能操作系统,Android也内置了许多其他智能操作系统共有的功能,比如每部手机都必备的恢复出厂设置.那么Android手机该如何设置,才能让它正确的恢 ...
- android textview 字体颜色设置,Android textview 设置不同的字体大小和颜色
在实际应用中,需要将一个字符串已不同的颜色,字体显示出来.当然完全可以通过不同textview拼接出来.也可以通过一个textview来展示. 步骤如下: 1.定义不同style . 不妨如下定义2个 ...
最新文章
- Python爬虫小偏方:如何用robots.txt快速抓取网站?
- python学习笔记一 一变量与运算符
- php 请求url没有扩展名,apache – 将.php重定向到无扩展名,并在没有.php的情况下创建url...
- 【转】算法导论学习笔记 一 分治算法
- 小白Linux下安装mysql
- 特斯拉又烧一辆!车库里起火 所幸无人受伤
- SpringBoot:Spring boot 主程序的功能SpringApplication.run(启动流程)
- 认识什么是运维中的CI/CD---持续集成交付工作笔记001
- 单行溢出隐藏没生效_至今没搞懂,为什么这个缸这么火?
- 手把手教你用R语言制作网络爬虫机器人(一)
- 腐蚀单机服务器怎么不稳定,腐蚀有什么指令?基本指令及服务器指令汇总
- Dev-C++/Cpp使用入门详解
- 锐捷Linux版的下载和使用(福大客户端)
- 上海航芯 | 从STM32F103到ACM32F403的U盘程序移植工程
- 51nod3155 跳房子
- html缩小照片尺寸像素不变,怎么把图片变小 像素不变
- Zynq术语详解,不懂啥是PL,PS,APU,SCU?那就进来看看吧
- post请求或get请求通过url传递参数
- MJT's Blog
- ASP.NET中使用uedit遇到的坑们
热门文章
- 华为已注册商标鸿蒙,华为已注册华为鸿蒙商标:整本山海经都被华为注册了
- 花菁染料cas138248-55-2齐岳生物
- Ubuntu 16.04 amd64下deb安装gcc5.4和所有依赖
- 各大搜索引擎蜘蛛IP地址大全
- 三星a52屏幕刷新率设置方法分享
- 【algorithm】源码详解中国大陆新身份证号码算法
- PAUL:Patch-based Discriminative Feature Learning for Unsupervised Person Re-identification阅读总结
- python import lap 出错
- python pip install一些第三方库的时候error
- 电大计算机专业英语形成性考试,电大资源网《管理英语1》形成性考核册作业题目和答案2018年...