【发布时间】:2021-09-05 07:38:43
【问题描述】:
请帮忙!!
我在回收站视图中使用媒体播放器,问题是当点击不同项目的播放按钮时,它们都会同时播放。如何停止之前的音频并开始新的音频?
这是适配器代码:
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
final MediaPlayer mediaPlayer = new MediaPlayer();
public void onBindViewHolder(@NonNull MyAdapter.ViewHolder viewHolder, int position) {
try {
mediaPlayer.reset();
mediaPlayer.setDataSource(item.get(position).getAudio());
mediaPlayer.prepare();
} catch (IOException e) {
e.printStackTrace();
}
viewHolder.play.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (mediaPlayer.isPlaying()) {
mediaPlayer.pause();
viewHolder.play.setImageResource(R.drawable.play);
} else {
mediaPlayer.start();
viewHolder.play.setImageResource(R.drawable.pause);
}
我想一个答案是使用标志。但我不知道如何实现。
【问题讨论】:
标签: android android-recyclerview android-mediaplayer