Mam działanie, które rozszerza ListView. Wypełniam moją listę wynikami zapytania do bazy danych sqlite. Element listy składa się z czasu początkowego, końcowego, nazwy klienta i statusu. Są to 4 bity informacji, które muszę wyświetlić dla każdego elementu listy.przypisywanie ukrytych wartości do obiektu z listview
Moje pytanie brzmi: Czy mogę przypisać ukryte elementy do tego elementu ListView?
Na przykład chcę zapisać pole _id wiersza bazy danych dla tego elementu ListView, tak aby po kliknięciu go można było rozpocząć nowe działanie na podstawie danych dla tego wiersza bazy danych.
EDIT
Kodeks używam wypełnić moją listę z mojego kursora:
String[] columns = new String[] {VisitsAdapter.KEY_CLIENT_FULL_NAME, VisitsAdapter.KEY_STATUS,VisitsAdapter.KEY_CLIENT_START_TIME, VisitsAdapter.KEY_CLIENT_END_TIME};
// the XML defined views which the data will be bound to
int[] to = new int[] { R.id.name_entry,R.id.number_entry,R.id.start_time_display,R.id.end_time_display };
SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(HomeScreen.this, R.layout.list_element, cur, columns, to);
Gdzie R.layout.list_item jest XML do mojej listy pozycji. Pochodzę z tła PHP/HTML, więc to, co zwykle robiłbym tutaj, ma ukryte pole do przechowywania mojej wartości _id, które mogłem uzyskać wtedy, gdy kliknięto element listy. czy mogę zrobić coś podobnego w systemie Android? Czy mogę umieścić ukryte pole _id w moim układzie xml?
Kiedy mówisz, że powinieneś używać CursorAdapter, masz na myśli przeciwieństwo SimpleCursorAdapter w moim przykładowym kodzie? –
Dziękuję za odpowiedź. Po przeszukaniu dokumentów na detektorach pozycji listowych odkryłem, że onListItemClick automatycznie przekazuje identyfikator typu rowID wyniku kursora. (kolumna _id z bazy danych). Dowiedziałem się o tym wszystkim źle (jak zauważyłeś), zakładając, że będę musiał ręcznie dodać go do elementu listy, ale nie zdaję sobie sprawy, że android zajmuje się tym automatycznie. Dzięki, Odpowiedź zaakceptowana. –
+1 za miłe wyjaśnienie ... Ale w przypadku SimpleAdapter, w jaki sposób mogę osiągnąć to samo? – hemu