Pracuję nad szufladą nawigacji Material Design. Stworzyłem w nim nową klasę RecyclerItemClickListener implements RecyclerView.OnItemTouchListener
, aby obsługiwać kliknięcia użytkownika na elementach listy. I użyć klasy w ten sposób w obrębie klasy MainActivity
onCreate
metoda:Jak zastosować setItemChecked (pozycja, prawda) z RecyclerView w systemie Android?
mRecyclerView.addOnItemTouchListener(
new RecyclerItemClickListener(this, mRecyclerView, new RecyclerItemClickListener.OnItemClickListener() {
@Override
public void onItemClick(View view, int position) {// do whatever
if(position!=0){
setItemChecked(position, true);
setSelectable(true);
boolean isSelected = view.isSelected();
view.setActivated(isSelected);
selectItem(position);
}
}
@Override
public void onItemLongClick(View view, int position){
// ...
}
})
);
Oparłem ten kod z tym blogu: RecyclerView part 2 ale to nie uzyskiwanie zadanie, a dla mnie to nie jest jasne, w ogóle, w jaki jestem Powinienem to sprawić. Sprawdziłem również to pozornie łatwe rozwiązanie: Innodroid - Tracking Selected Item in RecyclerView (również cytowane w tym answer), ale nie jest jasne, w jaki sposób mam wyprowadzić moją klasę MyAdapter
do klasy TrackSelectionAdapter
.
Jaki jest najlepszy sposób wyróżnienia pozycji na liście? Utknąłem.
Proszę o pomoc.
Bardzo dziękuję za ten samouczek, pomógł mi bardzo! Zaimplementowałem klasę 'MyAdapter', a następnie rozszerzyłem interfejs' CickListener' o dwie metody: 'onItemClick' i' onItemLongClick' i działałem jak czar! –