2015-01-20 21 views

Odpowiedz

9

Możesz dodać własną metodę do RecyclerView lub proponuję samą RecyclerView.Adapter.

Na przykład dla ListView, masz:

@Override 
public Object getItem(int position) { 
    return listData.get(position); 
} 

Można dodać to samo na swojej RecylcerView.Adapter lub dostępu to w inny sposób, dodając prostą metodę do RecylcerView.Adapter:

public List<Model> getList() { 
    return this.mModel; 
} 

Użyj go tak:

recyclerView.getAdapter().getList().get(position) 
+4

Dzięki za odpowiedź. Miałem tę metodę w adapterze, ale nie mogłem uzyskać do niej dostępu. Próbowałem rzucić recyclerView.getAdapter() do mojej klasy adaptera, a teraz mogę uzyskać do niego dostęp. –

+0

Twierdzę, że jeśli to zrobisz, wystawisz listę z możliwością jej modyfikacji z zewnątrz. Lepszym sposobem byłoby tylko odsłonięcie elementu zgodnie z ID: 'return this.mModel.get (id)' – Sudhanshu