【发布时间】:2017-04-12 08:09:31
【问题描述】:
我有一个歌曲列表视图,每行都有播放和暂停按钮。 显然,我不能在我的列表视图中同时有两个暂停图标(两首播放歌曲)所以我需要先将它们全部重置为播放图标,然后将所选视图设置为暂停图标。 我怎样才能做到这一点?
这是我到目前为止所做的:
在模型类(Product)中:
public boolean paused = true;
private int PlayPauseId;
public int getPlayPauseId(){
return PlayPauseId;
}
public void setPlayPauseId(int playPauseId) {
PlayPauseId = playPauseId;
}
在适配器中:
public interface PlayPauseClick {
void playPauseOnClick(int position);
}
private PlayPauseClick callback;
public void setPlayPauseClickListener(PlayPauseClick listener) {
this.callback = listener;
}
.
.
.
holder.playPauseHive.setImageResource(product.getPlayPauseId());
holder.playPauseHive.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (callback != null) {
callback.playPauseOnClick(position);
}
}
});
我的 Activity 中的回调:
@Override
public void playPauseOnClick(int position) {
final Product product = movieList.get(position);
if (product.paused) {
product.setPlayPauseId(R.drawable.ic_pause);
product.paused=false;
}else {
product.setPlayPauseId(R.drawable.ic_play);
product.paused = true;
}
this.adapter.notifyDataSetChanged();
}
【问题讨论】:
标签: android listview adapter android-adapter