【发布时间】:2017-03-06 11:37:44
【问题描述】:
我想在RecyclerView 中更改ImageView 的图像。
例如:
我在RecyclerView 中有 30 个项目,当我单击位置 1 的项目时,项目将图像从播放更改为暂停,然后当我向下滚动到位置 15 并单击播放按钮时选定的按钮(第 1 项)应将图像更改为播放,第 15 项图像应更改为暂停。我已经在 onbindViewHolder 中实现了 onClicklistener。但是,它正在更改错误项目中的图像。
请帮帮我
if (mediaPlayer != null) {
mediaPlayer.reset();
mediaPlayer.stop();
LinearLayout view = (LinearLayout) recyclerView.getChildAt(pos);
ImageView button = (ImageView) view.findViewById(R.id.playbutton);
button.setImageResource(R.drawable.ic_play_arrow_black_24dp);
}
playbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
boolean isPlaying = sharedPreferences.getBoolean(ConstantValue.ISPLAYING, false);
RecordingDetail recordingDetail = list.get(getAdapterPosition());
if (!isPlaying) {
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean(ConstantValue.ISPLAYING, true);
editor.putInt(ConstantValue.CURRENTINDEX, getAdapterPosition());
editor.commit();
playbutton.setImageResource(R.drawable.ic_pause_black_24dp);
mediaPlayerControl.Play(recordingDetail.path, getAdapterPosition(), progressBar);
}
}
}
这里播放按钮是我要更改的图像视图,mediaPlayerControl 是界面
【问题讨论】:
-
请发布您的代码
标签: android android-recyclerview onclicklistener