我在这里使用imageView,当我单击它时应在(linear10)中向我展示一个视频,该视频大约需要4秒钟,我需要一个代码,每次单击该imageView时该视频应重新开始播放视频结束后
这是我用来播放视频的代码:
imageview1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { n++;
final VideoView vd = new VideoView(MainActivity.this); vd.setLayoutParams(new LinearLayout.LayoutParams(android.widget.LinearLayout.LayoutParams.MATCH_PARENT, android.widget.LinearLayout.LayoutParams.MATCH_PARENT)); linear1.addView(vd); vd.setVideoURI(Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.mercury)); vd.requestFocus(); vd.start();
我尝试添加此代码,但这会循环播放视频! :
vd.setOnCompletionListener(new android.media.MediaPlayer.OnCompletionListener() { @Override public void onCompletion(android.media.MediaPlayer arg0) { vd.start(); } });
我想在单击图像视图时开始播放视频,如果再次单击,它将从头开始重新播放。
:
我找到了解决方案的人,请帮忙 有人叫jeff为我解决了问题(感谢jeff)解决方案:
将此代码放在onCreate下:
vd = new VideoView(MainActivity.this); vd.setLayoutParams(new LinearLayout.LayoutParams(android.widget.LinearLayout.LayoutParams.MATCH_PARENT, android.widget.LinearLayout.LayoutParams.MATCH_PARENT)); linear1.addView(vd);
vd.setVideoURI(Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.mercury));
}
private VideoView vd;
public void nothing() {
和此代码在imageview1下:
vd.requestFocus();
vd.start();
vd.seekTo(0);