我在我的应用中添加了以下代码,以添加一个视频视图,该视频链接到我的原始文件夹中的视频但是我收到了错误信息
VideoView说VideoView cannot be resolved or is not a field
我已经包含了所有相关的imports.Is在我的语法中出现了错误?
VideoView StudentLife = (VideoView) findViewById(R.id.VideoView);
Uri uri = Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.learningatgmi);
videoview.setVideoURI(uri);
videoview.start();
我对视频的xml布局如下:
<VideoView
android:id="@+id/videoView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView2"
android:layout_centerHorizontal="true"
android:layout_marginTop="53dp" />
答案 0 :(得分:4)
因此您的变量名称为StudentLife
VideoView StudentLife = (VideoView) findViewById(R.id.VideoView);
你在videoview
上调用其他mehtod是未定义的变量..
以下代码:
videoview.setVideoURI(uri);
videoview.start();
应该是:
StudentLife.setVideoURI(uri);
StudentLife.start();
EDIT1:
根据你的xml,获取视频视图实例的行应该是
VideoView StudentLife = (VideoView) findViewById(R.id.videoView1);
完整的工作代码应如下:
VideoView StudentLife = (VideoView) findViewById(R.id.videoView1);
Uri uri = Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.learningatgmi);
StudentLife.setVideoURI(uri);
StudentLife.start();
一边不是;你不应该使用类名作为变量名...也在java中,变量的第一个字符不应该是大写...所以让我们使用'videoView'作为变量名。所以现在下面应该是正确的工作代码一种变量名..
VideoView videoView = (VideoView) findViewById(R.id.videoView1);
Uri uri = Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.learningatgmi);
videoView.setVideoURI(uri);
videoView.start();
答案 1 :(得分:1)
VideoView
的ID为videoView1
。因此,您应该使用VideoView
R.id.videoView1
对象的引用
VideoView StudentLife = (VideoView) findViewById(R.id.videoView1);
Uri uri = Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.learningatgmi);
StudentLife.setVideoURI(uri);
StudentLife.start();
答案 2 :(得分:0)
我的代码有效::
mc = new MediaController(this);
vd.setMediaController(mc);
vd.setVideoURI(intentUri);
vd.start();
setContentView(vd);
答案 3 :(得分:0)
实际上,当您使用此代码时,
Uri uri = Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.learningatgmi);
StudentLife.setVideoURI(uri);
它将URI传递为null,因此它显示错误 因此,您不能使用以下代码。
StudentLife=(VideoView)findViewById(R.id.videoplayer);
StudentLife.setVideoURI(Uri.parse("android.resource://" +getPackageName()+ "/" +R.raw.sample));
StudentLife.requestFocus();
StudentLife.start();
不是在设置之前解析URI,而是在设置它时传递它会更好。