開始時に、子要素の可視性がなくなったヘッダー要素と子要素を持つリサイクルビューがあります。私はヘッダー要素をクリックしたときに、その位置の子要素がゼロであると見なすことができます。私が直面している唯一の問題は、同じ位置を再びクリックしたときに同じビューを崩壊させたいということです。ロジックonBingViewHolderリサイクルビューのレイアウトを折り畳む
マイリサイクルビューは以下の通りである: - 高度で
holder.doc_type.setText(docDatalist.get(position).getDocTypeDesc());
if (position == expandedPosition)
{
holder.recyclerViewImages.setVisibility(View.VISIBLE);
imagerequestserver(docDatalist.get(expandedPosition), vinappserial, holder);
holder.iconexpandCollapse.setImageResource(R.mipmap.expand_4);
}
else {
holder.recyclerViewImages.setVisibility(View.GONE);
holder.iconexpandCollapse.setImageResource(R.mipmap.expand);
}
holder.myDocumentListCollapse.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (expandedPosition >= 0) {
int prev = expandedPosition;
holder.recyclerViewImages.setVisibility(View.VISIBLE);
notifyItemChanged(prev);
}else {
expandedPosition = holder.getAdapterPosition();
notifyItemChanged(expandedPosition);
}
}
});
感謝。
の中に通知するように管理しますこれを実装するには、['SparseBooleanArray'](https://developer.android.com/reference/an droid/util/SparseBooleanArray.html)。ロジックは、アイテムが展開されるたびにアイテムの位置を取得し、それを使ってSparseBooleanArray内のブール値** true **を作成し、折り畳み状態用の** false **を作成するということです。 –
どこでも使用されている 'shouldExpand'は表示されません... – Belladonna
@Belladonna申し訳ありません、私はそれを忘れてしまいます。 – Champandorid