Wątek przeniesiony 2018-01-04 18:41 z Java przez Shalom.

Zapamiętanie zaznaczonych CheckedTextView i wysłanie ich do kolejnej aktywności

0

Witam wszystkich Forumowiczów :)
Otóż fragment mojej aplikacji, z którym mam problem służy aby z dodanych do bazy zawodników wyświetlanych w ListView zaznaczyć 5ciu (pierwsza piątka w koszykówce zaczynająca mecz) i przesłać tych wybranych 5 zawodników do kolejnej aktywności. Mam ListView który jest wypełniony tymi CheckedTextView mogę je zaznaczać lecz nie umiem tego jakby zapamiętać i wysłać. Poniżej zamieszczam kod z aktywności oraz adaptera, jeżeli czegoś nie dopowiedziałem postaram się w trybie natychmiastowym odpisać.
Kod: https://paste.ofcode.org/3TZp5tXzm92vsN76jtkVWP

P.S Czytałem o funkach getCheckedItemPositions,getcheckeditemids lecz nie umiem ich zastosować

Dziękuje z góry za pomoc i pozdrawiam wszystkich Forumowiczów

0

To są podstawy. Możesz stworzyć Bundle, zapisać tych 5 zawodników i wysłać poprzez Intent. Inny sposób to napisanie klasy implementującej interfejs Parcelable, następnie stworzenie obiektu z tymi 5 zawodnikami i przesłanie poprzez Intent.

0

@Haskell:
Ja zwykle przekazuję przez WeakReference. Z grubsza efekt ten sam, co przez globalne pole statyczne (co byłoby złe), tyle że garbage collector wie, że ma usunąć obiekt, gdy nie jest już używany (np po zniszczeniu activity), więc nie ma wycieków pamięci. Proste i eleganckie. Przekazujemy dane, a gdy już nie są potrzebne, pamięć jest automatycznie zwalniana.

0

A nie dało by rady jakoś stworzyć tablicy string z nazwami w adapterze które są zaznaczone i usuwać je z tablicy jak nie są zaznaczone ?

0

Dałoby się. Ale zacznijmy od tego, że powinieneś używać RecyclerView zamiast ListView. ListView jest przestarzałe i ma mniej możliwości

0

Nie ukrywam że zaczynam swoja przygodę z androidem dopiero, lecz jakie inne możliwości posiada recyclerView w porównaniu do ListView? Z ListView nie miałem dużo problemów jedynie gdy chciałem utworzyć customowy layout musiałem trochę poszukać lecz znalazłem rozwiązanie, tutaj jednak napotkałem problem jak skojarzyć że checkbox jest zaznaczony i nie wiem jak z nim sie uporać.

0

Znalazłem odpowiedź: Dodałem tablice która przechowuje mi nazwy zawodników następnie przy każdym naciśnięciu CheckBoxa dodawało mi tą nazwę lub odejmowało mi z tablicy i następnie wysłałem tą tablice do aktywności gdzie po wywołaniu przesyłam ją przez intenta do kolejnej aktywności.

Wątek do zamknięcia
Pozdrawiam.

1 użytkowników online, w tym zalogowanych: 0, gości: 1