Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用VideoFragment在Leanback上播放视频时,如何将缩放模式设置为全屏拉伸_Android_Android Tv_Leanback - Fatal编程技术网

Android 使用VideoFragment在Leanback上播放视频时,如何将缩放模式设置为全屏拉伸

Android 使用VideoFragment在Leanback上播放视频时,如何将缩放模式设置为全屏拉伸,android,android-tv,leanback,Android,Android Tv,Leanback,没有ExoPlayer的谷歌视频播放器 使用ExoPlayer的谷歌视频播放器 我试用过谷歌的leanback showcase,它也在“适合屏幕”模式下播放视频,两侧有黑色条。我在API文档的任何地方都找不到更改缩放模式的选项我必须查看视频片段源代码才能找到这个选项VideoFragment有一个简单的SurfaceView作为其布局的根元素,您所要做的就是使SurfaceView与父级(即设备屏幕)的宽度和高度相匹配。要做到这一点,只需覆盖onvideosizechange,并使用getSu

没有ExoPlayer的谷歌视频播放器

使用ExoPlayer的谷歌视频播放器


我试用过谷歌的leanback showcase,它也在“适合屏幕”模式下播放视频,两侧有黑色条。我在API文档的任何地方都找不到更改缩放模式的选项

我必须查看
视频片段
源代码才能找到这个选项
VideoFragment
有一个简单的
SurfaceView
作为其布局的根元素,您所要做的就是使
SurfaceView
与父级(即设备屏幕)的宽度和高度相匹配。要做到这一点,只需覆盖
onvideosizechange
,并使用
getSurfaceView
获取对
VideoFragment
中使用的包private
SurfaceView
实例的引用

@Override
protected void onVideoSizeChanged(int width, int height) {
    switch (scaleMode) {
        //Flag indicates that this video should stretch to screen
        case MediaMetaData.SCALE_MODE_STRETCH:  
            View rootView = getView();
            SurfaceView surfaceView = getSurfaceView();
            ViewGroup.LayoutParams params = surfaceView.getLayoutParams();
            params.height = rootView.getHeight();
            params.width = rootView.getWidth();
            surfaceView.setLayoutParams(params);
            break;
        //When the video shouldn't stretch, just invoke super to have the VideoFragment's default behavior which is fit to screen
        default:                            
            super.onVideoSizeChanged(width, height);
    }
}

您可以更改布局视图,添加此行
app:resize\u mode=“fill”
。查看此处()了解更多详细信息。使用
resize\u模式
控制如何在视图中调整视频和相册艺术的大小。有效值为
fit
固定宽度
固定高度
填充
。另请参见以获取更多参考。