我有一个 RecyclerView,它在单击某些项目时播放录音。我希望当用户单击正在播放特定录音的 item1 时的行为,并且按钮视图发生更改,这工作正常。
但同时,当 item1 录音正在播放并且用户单击 item2 时,item1 行按钮将返回到其原始位置。
下图显示了单击 item1(第 1 行)时的视图。(这工作正常)
我还测试了它以控制 inBindViewHolder 方法中的视图。但它不起作用,因为每当我单击 holder 对象时,仅控制当前选定行的视图。
mPlayAudio.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View view)
{
Log.d(TAG, "onClick: Present in onClick mPlayAudio");
if (listener != null)
{
final int position = getAdapterPosition();
if (position != RecyclerView.NO_POSITION)
{
// This section contain the code to play and stop
the audio
// Using below line I only able to change selected
// row button View not other row Button View
mPlayAudio.setImageResource(R.drawable.play);
}
}
}
});
我也在 onBindViewHolder 方法中尝试过此操作,但仍然不起作用。
下面的代码添加到onBindViewHolder中
holder.mPlayAudio.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view)
{
// This section contain code to play and stop audio
//Using below statement I only able to change the
//visibility of current selected row View not others
holder.mPlayAudio.setImageResource(R.drawable.play);
}
}
呼啦一阵风
相关分类