基本上,我想在我的应用程序中做的是显示视频。
实现此目标的最佳工具似乎是VideoView。
所以我使用了这段代码:
<VideoView android:id="@+id/videoview" android:layout_width="50dip" android:layout_height="50dip"></VideoView>
在我的活动中:
VideoView videoHolder = (VideoView)findViewById(R.id.videoview);
videoHolder.setMediaController(new MediaController(this));
videoHolder.setVideoURI(Uri.parse("android.resource://com.blabla.blabla/" + R.raw.blabla));
videoHolder.requestFocus();
videoHolder.start();
这就是诀窍。
不幸的是,我希望默认情况下在我的布局中预览(缩略图)视频
所以,我删除了videoHolder.start();命令,但我只能得到一个黑屏。点击隐形区域时视频开始......
第一个问题
可以在启动之前在VideoView中显示视频预览吗?
第二个问题
我想在双击网页视图时在全屏显示视频,我该如何实现?
非常感谢任何帮助/链接/建议
答案 0 :(得分:3)
是的,您可以使用ThumbnailUtils获取视频缩略图:
Bitmap thumb = ThumbnailUtils.createVideoThumbnail(path,
MediaStore.Images.Thumbnails.MINI_KIND);
我之前没有真正看到应用切换到全屏。我实际上不确定是否可以这样做(特别是VideoView
)。但是,您可能会对以下方法之一感到满意:
VideoView
放在FrameLayout
中,然后更改其布局参数。VideoView
覆盖Window#addContentView
。Visibility.GONE
)您的其他观点,并允许VideoView
扩展其布局区域。答案 1 :(得分:0)
你可以使用VideoView.seekTo(毫秒)作为替代,比方说1秒(1000毫秒)。如果1秒后的视频剪辑确实有一个图像,就像一些视频从空白屏幕开始那么“淡入”(缺少更好的单词)到一个场景会更频繁地给你一个1秒的黑屏。你可以在VideoView.onPrepared()下调用它。我在视频在网络服务器上时使用的这个。