Listanézeti és egy egyszerű példát a meghatározása a préselt termék - verem túlcsordulás orosz
Próbáljuk megérteni, hogy mi történik.
Van egy osztály ListView. Maga ListView - az egyetlen örököse a nézet. felelős feltérképezését és a térképek kezelésére megtekintése küldött neki (vizuálisan megjelenítő elemek listáját).
Összefoglalva egy bekezdés: ListView - ez nem maga a lista, és egy listát a bizalmatlansági nem tartalmaz, de tartalmazza az adaptert, hogy meg kell átadni.
Van egy osztály ArrayAdapter vagy bármely más örökös ListAdapter. amely felelős az átviteli View. megjelenítő lista elemeit a ListView.
Összefoglalva egy bekezdés: - ArrayAdapter - ez nem maga a lista, hanem egy adapter, amely egy listát, amelyet meg kell adni neki.
Van egy osztály ArrayList, vagy bármilyen más örökös List. amely a listát az egyes tárgyakat.
És most a régóta várt példa:
Hozzon létre egy egyszerű adapter, átadva azt a listát:
Feltételezzük, hogy már tudja, hogyan kell forrásokat találni az elrendezést, hogy keres ListView és adja át neki az adapter:
Mi akkor történik a motorháztető alatt? És ott van a következő párbeszéd:
ListView mondja: A francba, itt az ideje, hogy megjelenjenek! Adapter, Th szemetet? Amennyiben megtekintése. mennyi?
ArrayAdapter kotorászott a zsebében, talál egy csomag ArrayList menta ízű, nézi az objektumok száma írva a kis nyomtatási csomag, és tegye a szám ..
ListView mondja: Gyere, első, gyorsabban!
ArrayAdapter kapja az első elérhető objektumra a listában, és felhívni őket a térképen megtekintése shablonchik adtunk neki, majd azt mondja: folyamatosan Bro!
ListView vesz térképen. leteszi a képernyőn keresztül, és azt mondta: Nincs idő elmagyarázni, adj egy percet!
És így, amíg a következő két esemény:
1) ért véget a képernyőn;
2) véget ért ArrayList csomag;
Ezt követően, ListView és ArrayAdapter átmenetileg nyugszik, amíg valaki vagy valami elkezd görgetni ListView vagy nem mondja ArrayAdapter y, hogy a csomag ArrayList valami megváltozott.
Nos, most azt hiszem, nem tud válaszolni a kérdésre, hogy „hogyan kell meghatározni, hogy melyik vonal (lista elemet) lett kiválasztva a gombnyomásra”:
Bár van egy út, és nincs gomb megnyomásakor a nagyon eleme a lista: