Hirdetés
- Samsung Galaxy Z Flip5 - ami kint, az van bent
- Vivo X200 Pro - a kétszázát!
- Mobil flották
- Samsung Galaxy Watch4 és Watch4 Classic - próbawearzió
- Fotók, videók mobillal
- Xiaomi 14T - nem baj, hogy nem Pro
- A piac legerősebb kameráját ígéri a Xiaomi 17 Ultra
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Drága Bluetooth tagek olcsóbb alternatívái (MiLi MiTag, LiTag, OTAG, stb.)
Ú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
- 5.1, 7.1 és gamer fejhallgatók
- PlayStation 5
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Epic Store Ünnepi Ajándékozás - 11. nap: SKALD: Against the Black Priory
- Samsung Galaxy Z Flip5 - ami kint, az van bent
- Vivo X200 Pro - a kétszázát!
- Azonnali notebookos kérdések órája
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Végleg lemondott a régi gépekről a Steam
- Linux kezdőknek
- További aktív témák...
- Új, bontatlan / felbontott / Kingston, Corsair, G. Skill, Crucial / DDR5 ramok / gari!
- NVIDIA RTX 3080 Ti Founders Edition
- 15.gen! Intel Core Ultra 9 285K +16-32GB DDR5 RAM +hűtött VRM-es B860 lap! GAR/SZÁMLA (a Te nevedre)
- AOC G24G1 140Hz 24" Ívelt hibátlan állapot
- Dell Latitude E6410 i5 M560, Nvidia NVS 3100M 512MB GDDR3, 4Gb RAM, 250GB HDD, jó akku, számla gar
- Lenovo ThinkPad P14s Gen 2 i7-1165G7 32 GB Ram 512 GB SSD 1 év garancia
- Telefon felvásárlás!! Samsung Galaxy Note 10+/Samsung Galaxy Note 20/Samsung Galaxy Note 20 Ultra
- HIBÁTLAN iPhone 14 128GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3159
- Bomba ár! Dell Latitude 3340 - i3-4GEN I 4GB I 500GB I 13,3" HD I HDMI I Cam I W10 I Garancia!
- 35" ASUS ROG Swift PG35VQ curved GAMER monitor
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


