我尝试打开这样的mp4视频:
VideoView myVideoView = new VideoView(this);
myVideoView.setVideoURI(Uri.parse(path[idImage]));
myVideoView.setLayoutParams(new LinearLayout.LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.FILL_PARENT));
myVideoView.setMediaController(new MediaController(this));
myVideoView.requestFocus();
myVideoView.start();
但我在屏幕上看不到任何内容。我错过了什么?
我的xml文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:background="#000000"
android:id="@+id/layout_main">
<ViewFlipper android:id="@+id/details"
android:layout_width="fill_parent" android:layout_height="fill_parent">
</ViewFlipper>
<VideoView android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:id="@+id/VideoView"></VideoView>
</LinearLayout>
答案 0 :(得分:2)
我知道我正在回答一个已经回答的问题,但它可能会帮助那些通过搜索登陆这里的人。
我无法从API示例中获取Android的VideoView来播放任何文件,但这是我的错误。
我从根目录键入路径,例如 /videoFileName.mp4 ,我应该在其中键入sdcard,如 /sdcard/videoFileName.mp4
我的索尼Ercisson Xperia Arc在我通过adb运行我的应用程序的同时作为USB大容量设备存储连接,因此内置SD卡已卸载且无法找到文件。当我在三星Galaxy S上尝试使用相同的代码时,我发现了这一点,当连接时它的行为有所不同。
答案 1 :(得分:0)
您需要在布局中声明VideoView标记,例如
<VideoView android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:id="@+id/VideoView"></VideoView>
并使用:
实例化VideoView videoView = (VideoView) findViewById(R.id.VideoView);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(videoView);
// Set video link (mp4 format )
Uri video = Uri.parse(path[idImage]);
videoView.setMediaController(mediaController);
videoView.setVideoURI(video);
videoView.start();