我有两个问题。
我第一次点击ImageView时,音频没有播放。只有当我第二次单击ImageView播放音频时。我必须更改或添加到我的代码才能在第一次点击时播放音频?
当我在启动音频后再次单击ImageView时,如果我想再次播放,我必须等待音频完成。即使音频正在播放,我还需要添加到我的代码中以便每次点击都重新启动音频?
代码:
public void next (View view){
ImageView one = (ImageView)this.findViewById(R.id.Seethrough);
final MediaPlayer mp = MediaPlayer.create(this, R.raw.dry);
one.setOnClickListener(new View.OnClickListener(){
public void onClick(View v) {
mp.start();
}
});
}
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/seethrough"
android:clickable="true"
android:id="@+id/Seethrough"
android:onClick="next"
/>
答案 0 :(得分:0)
您在xml属性中设置了android:onClick
,这将调用您的next
方法,并在setOnClickListener
中再次设置next
,因此您第一次点击imageView ,mp.start()
将不会被调用。
MediaPlayer mp = null;
public void next (View view) {
if (mp != null) {
mp.stop();
mp.release();
}
mp = MediaPlayer.create(this, R.raw.dry);
mp.start();
}