Android在VideoView中加载视频

时间:2014-05-05 17:25:29

标签: android android-videoview

我想在原始文件夹中使用以下代码

在视频视图中加载视频
 String uri = "android.resource://" + getPackageName() + "/" + R.raw.preview;
 VideoView mVideoView  = (VideoView)findViewById(R.id.videoView1);
 mVideoView.setVideoURI(Uri.parse(uri));
 mVideoView.requestFocus();
 mVideoView.start();

我在此行收到NullPointerExceptionmVideoView.setVideoURI(Uri.parse(uri)); 我应该怎么做?

2 个答案:

答案 0 :(得分:4)

确保findViewById函数调用正在返回VideoView对象且不为空。

当您将方法调用为null的对象时,通常会发生空指针错误。

您的布局xml文件中R.id.videoView1的引用可能是错误的,或者您的xml布局文件中可能出现错误,但该文件未显示。

如果您正在使用Eclipse或Android Studio,R.i.videoView1应为蓝色,表明它已在布局文件中找到。

此外,您可以在调用方法之前验证对象是否为null。见下文:

 String uri = "android.resource://" + getPackageName() + "/" + R.raw.preview;
 VideoView mVideoView  = (VideoView)findViewById(R.id.videoView1);
 if (mVideoView != null)
 {  mVideoView.setVideoURI(Uri.parse(uri));
    mVideoView.requestFocus();
    mVideoView.start();
 } else
 { //toast or print "mVideoView is null"
 }

答案 1 :(得分:0)

String path = "android.resource://" + getPackageName() + "/" + R.raw.preview; VideoView mVideoView = (VideoView)findViewById(R.id.videoView1); mVideoView.setVideoPath(path);