【问题标题】:android VideoView resizes videoandroid VideoView 调整视频大小
【发布时间】:2019-12-27 11:42:47
【问题描述】:

我有一个自定义 VideoView,我正在重写 onMeasure 方法以使视频充满屏幕,同时保持视频文件的比例。

一切正常,但对于某些视频,它的行为很奇怪:

我在 onMeasure 方法中放置了一个中断点并在调试模式下运行。

当视频加载时,它会按预期填满屏幕,但几秒钟后,恰好当鼠标指针消失时,视频会调整到其原始大小,而不是填满屏幕,并且不会再次越过中断点(onMeasure 方法没有被调用)。

如果我再次移动鼠标,视频会填满屏幕,直到指针消失。

我使用的是 Android 4.4.4。

【问题讨论】:

    标签: android video resize android-videoview


    【解决方案1】:

    如果有人遇到同样的问题,我会发布我所做的:

        DisplayMetrics metrics = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getRealMetrics(metrics);
        FrameLayout fralayout = (FrameLayout) findViewById(R.id.framelayoutparent);
        FrameLayout.LayoutParams lpFraParams = (FrameLayout.LayoutParams) fralayout.getLayoutParams();
        lpFraParams.width = metrics.widthPixels-1;
        lpFraParams.height = metrics.heightPixels-1;
        fralayout.setLayoutParams(lpFraParams);
    

    以前我没有在宽度和高度上减去一个像素,减去一个像素就可以了。这个 FrameLayout 是 VideoView 的父级。

    我不明白它为什么会有这种行为。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-06
      • 1970-01-01
      • 2017-05-27
      • 1970-01-01
      相关资源
      最近更新 更多