Fragment 中带有 VideoView 的黑屏

Posted

技术标签:

【中文标题】Fragment 中带有 VideoView 的黑屏【英文标题】:Black displayng with VideoView into Fragment 【发布时间】:2015-06-25 10:39:46 【问题描述】:

我的 VideoView 有问题。 我有一个 videoView 和一个 ImageView,当我尝试显示视频时,我将 ImageView 设置为不可见,而将 videoView 设置为可见。我也正确地将 URI 放到 VideoView 但它没有显示视频...这是我的简单代码

videoView = (VideoView) getView().findViewById(R.id.myVideo);
slidingimage = (ImageView) getView().findViewById(R.id.imageView2);
slidingimage.setVisibility(View.INVISIBLE);
videoView.setVisibility(View.VISIBLE);
Uri vidUri = Uri.parse(singletonMedia.listaMedia.get(currentMedia).url);
//Log.w(null, "URI del video: "+vidUri);
videoView.setVideoURI(vidUri);
videoView.start();
Log.w(null, "Media corrente: " + currentMedia+ " Questo e' un video con uri:"+vidUri);

谁能帮帮我,先谢谢了

【问题讨论】:

发布您的 logcat 并检查 URI objecty 我已经这样做了,并且 uri 是正确的...... 如果只显示视频视图并删除图像视图会怎样?我需要知道这一点以确保您的 videoview 运行良好 它给了我黑色显示...在代码的其他部分我隐藏了 VideoView 并显示了 ImageView 并且它工作正常...所以我认为如果我隐藏 ImageView 并显示应该是一样的视频视图.., 【参考方案1】:

在 videoView.start() 之前添加这个:

videoView.requestFocus();

【讨论】:

以上是关于Fragment 中带有 VideoView 的黑屏的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Fragment 对象中控制 ViewPager 更改页面

Fragment 和 FragmentStatePagerAdapter 中带有 ViewPager 的片段导致异常(带有完整示例)

ViewPager中带有StaggeredGridLayoutManager的RecyclerView,返回fragment时自动排列item

VideoView 在 Fragment 中播放 .m3u8 不会在 Nexus 7 中播放。在 HTC1 M8 中播放正常

启动新 Activity 时保持 VideoView 的状态

如何在android中播放视频时拍摄videoview的快照?