Android 7 上的 VideoView 错误
Posted
技术标签:
【中文标题】Android 7 上的 VideoView 错误【英文标题】:VideoView bug on Android 7 【发布时间】:2017-11-24 12:39:11 【问题描述】:我正在使用 VideoView 在我的应用中播放视频。在第一个片段中,我有占据屏幕一半的 VideoView。点击视频会打开带有全屏 VideoView 的新片段。片段具有完全独立的布局,具有不同的 VideoView 实例。
错误案例:我在第一个片段上开始播放 -> 在播放期间点击视频 -> 全屏视频打开 -> 我按下播放按钮,我看到全屏视频与前一个片段的视频重叠。有人遇到过这个问题吗?
此错误在 android API 24 上仍然存在,但在 Android N 上一切正常。
【问题讨论】:
请分享您的错误日志 需要更多,没有代码或屏幕截图无法提供帮助 在 viewpager 中的 videoView 有同样的问题。您的问题解决了吗? 是的,我刚刚使用了另一个播放器,基于纹理视图。 VideoView 中描述的行为无法解决 - 它本质上忽略了布局层次结构。 【参考方案1】:我遇到了同样的问题并找到了以下解决方法:从片段切换时将视频视图的高度设置为 0。请注意,您需要将切换延迟几毫秒(对我来说是 100 毫秒)才能正常工作:
val layoutParams = videoView.layoutParams
layoutParams.height = 0
videoView.layoutParams = layoutParams
videoView.requestLayout()
Handler(Looper.getMainLooper()).postDelayed(
//Switch fragment here
, 100L)
【讨论】:
以上是关于Android 7 上的 VideoView 错误的主要内容,如果未能解决你的问题,请参考以下文章
将设备上的视频流式传输到 videoview - Android
Android MediaPlayer/VideoView 错误 (1, -2147483648)
无法播放视频 VideoView Android 12(错误 (1, -2147483648))