首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android VideoView -屏幕方向改变后保持aspect-fill

Android VideoView是Android平台上的一个视图控件,用于播放视频文件。它可以在应用程序中嵌入视频播放器,并提供了一些基本的控制功能,如播放、暂停、停止和跳转等。

屏幕方向改变后保持aspect-fill是指在屏幕方向发生改变时,保持视频的宽高比不变,并填充满屏幕。这样可以确保视频在不同屏幕方向下的显示效果一致。

为了实现屏幕方向改变后保持aspect-fill,可以通过以下步骤进行操作:

  1. 在AndroidManifest.xml文件中,为对应的Activity添加以下属性:android:configChanges="orientation|screenSize"这样可以防止屏幕方向改变时Activity重新创建。
  2. 在Activity的布局文件中,将VideoView的宽度设置为match_parent,高度设置为wrap_content,以便根据屏幕方向自动调整宽高。
  3. 在Activity的代码中,重写onConfigurationChanged方法,监听屏幕方向改变事件,并在该方法中重新设置VideoView的宽高比。示例代码如下:@Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { // 横屏 videoView.setVideoLayout(VideoView.VIDEO_LAYOUT_SCALE); } else { // 竖屏 videoView.setVideoLayout(VideoView.VIDEO_LAYOUT_ORIGIN); } }其中,setVideoLayout方法用于设置VideoView的宽高比,参数VideoView.VIDEO_LAYOUT_SCALE表示保持宽高比并填充满屏幕,VideoView.VIDEO_LAYOUT_ORIGIN表示保持原始宽高比。

推荐的腾讯云相关产品是腾讯云移动直播(https://cloud.tencent.com/product/mlvb),它提供了强大的移动直播解决方案,可用于在移动应用中实现视频直播功能。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android开发笔记(一百六十七)Android8.0的画中画模式

前面的博文《Android开发笔记(一百五十九)Android7.0的分屏模式》介绍了Android7.0的多窗口特性,但是这个分屏的区域是固定的,要么在屏幕的上半部分,要么在屏幕的下半部分,不但尺寸无法调整而且还不能拖动,使得它的用户体验不够完美。为此Android8.0又带了另一种更高级的多窗口模式,号称“Picture in Picture”(简称PIP,即“画中画”)。应用一旦进入画中画模式,就会缩小为屏幕上的一个小窗口,该窗口可拖动可调整大小,非常适合用来播放视频。那么如何才能让App支持画中画呢?接下来将对画中画的开发工作进行详细介绍。 经过前面的学习,大家知道Activity默认是支持分屏模式的,当然开发者要给activity节点添加下面的属性描述,从而声明允许分屏也是可以的:

03

Android开发笔记(一百二十五)自定义视频播放器

在Android中播放视频的方式有两种: 1、使用MediaPlayer结合SurfaceView进行播放。其中通过SurfaceView显示视频的画面,通过MediaPlayer来设置播放参数、并控制视频的播放操作;该方式的具体说明参见《Android开发笔记(五十七)录像录音与播放》。 该方式的好处是灵活性强,可随意定制。缺点是编码复杂,连开始/暂停的按钮都要自己实现。 2、使用VideoView结合MediaController进行播放。VideoView其实是从SurfaceView扩展而来,并在内部集成了MediaPlayer,从而实现视频画面与视频操作的统一管理;而MediaController则是一个简单的播放控制条,它实现了基本的控制按钮,如开始/暂停按钮、上一个/下一个按钮、快进/快退按钮,以及进度条等控件;把VideoView与MediaController关联起来,便是一个类似于Window Media Player的精简版播放器。 该方式的好处是简单易用,编码容易。缺点是可定制差,难以扩展,想给按钮换个样式都不行。 但是不积跬步无以至千里,如果我们要定制一个好用好看的播放器,还是得先把笨拙的VideoView与MediaController搞清楚才行。就像穷国一开始没有汽车工业,那只能从研究拖拉机开始,没办法一蹴而就强行大跃进呀。

04
领券