Hirdetés
- sziku69: Szólánc.
- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Geri Bátyó: Agglegénykonyha 13 – Néhány egyszerű, de finom étel
- Luck Dragon: Asszociációs játék. :)
- Geri Bátyó: Agglegénykonyha 14 – Kések, késélezés
- sziku69: Fűzzük össze a szavakat :)
- talmida: Változások 2. rész
- Luck Dragon: MárkaLánc
- DeFranco: Tanuljunk angolul játékosan! - Duolingo
Új hozzászólás Aktív témák
-
thon73
tag
válasz
WonderCSabo
#2096
üzenetére
Az entries értékét leellenőriztem, az mindig megfelelő.
Egy kicsit előrébb jutottam - néha ugyanis feldobja a listát, néha nem - és azt találtam, hogy elindítja a filtert, mégpedig mindenképp. A filter viszont kiveszi a még üres (null) értéket az adatokból, majd PÁRHUZAMOSAN fut a performFiltering és a Loader. A Loader előbb végez, és onLoadFinished-ben beállítja az adatokat. Majd jön a Filter (ami még az üres adatokat szűrte!), és átállítja az egész történetet üresre, hiszen -szerinte - nincsenek is adatok.
Erre nem is gondoltam, mert 1. ekkor még elvileg nem is létezik a filter. 2. ha a filter-szöveg üres, akkor nem is szűr. Csakhogy ilyenkor is beállítja a teljes adatmennyiséget - ami szerinte: üres.Namost. Hogyan bogozom ezt ki?
Az onCreateView-ben állítom be a filtert, így:filter = (EditText) view.findViewById(R.id.filter);
filter.addTextChangedListener(new TextWatcher()
{
@Override
public void onTextChanged(CharSequence s, int start, int before, int count)
{
((MainListAdapter)getListAdapter()).getFilter().filter(s);
}Ezt nem tudom nagyon máshova tenni, mert csak egyszer indíthatom el.
Tegyek be egy flag-et az adapterbe, ami figyeli, hogy vannak-e már beállított adatok??
Vagy ne engedjem meg, hogy az adatok értéke null legyen? Hanem az üres adatot egy üres (de létező) ArrayList jelentse?
Vagy mit érdemes ilyenkor csinálni?((Az ArrayAdapter is alternatíva lenne, de annak majd minden részét módosítottam volna, ezért használtam BaseAdapter alapot. Sztem. a probléma ettől független. ))
Be is bizonyítottam, hogy ez a probléma, itt:
protected void publishResults(CharSequence constraint, FilterResults filterResults)
{
------------------>if (filterResults.values != null)
{
filteredEntries = (List<SampleEntry>) filterResults.values;
notifyDataSetChanged();
}
}No, így működik. Órákat játszottam vele, de erre nem gondoltam volna...
Most már csak arra kell rájönnöm, hogy a.) mi a nyavaja indítja a filtert b.) ezt a tákolt ellenőrzést hogyan tudom szépen megcsinálni...
Új hozzászólás Aktív témák
- exHWSW - Értünk mindenhez IS
- A hónap végén érkezik a The Division: Resurgence
- TCL LCD és LED TV-k
- Hardcore café
- OLED monitor topic
- sziku69: Szólánc.
- Redmi Note 12 Pro - nem tolták túl
- Öt év után újra előkerült a SiN Reloaded
- Kész rémálom lesz Linuxot használni jövőre az USA egyes államaiban
- Formula-1
- További aktív témák...
- Gamer PC-Számítógép! Csere-Beszámítás! R5 3600 / RX 5700XT / 16GB DDR4 / 500 SSD + 1TB HDD
- Lenovo 40AH és 40A1 dokkoló, töltő is.
- Apple iPhone 11 Pro Max 256GB - Kártyafüggetlen, Grafit, 100% Akku - 1 Év Garanciával
- BESZÁMÍTÁS! ASUS H110M i5 6500 8GB DDR4 120GB SSD 500GB HDD GTX 1050Ti 4GB Zalman T3 Plus NBASE 600W
- HP EliteBook 840 G11 Ultra 7 / 16GB RAM / 512GB SSD / FHD+ IPS / Garancia 2027.11.
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
