Hirdetés

Új hozzászólás Aktív témák

  • thon73

    tag

    Sziasztok! Elakadtam egy BaseAdapter bővítésnél. Az adapter egy ArrayList-et használ, amit egy setData() metódus állít be:

    public void setData( List<SampleEntry> entries )
    {
    this.originalEntries = entries;
    this.filteredEntries = entries;

    notifyDataSetChanged();
    }

    A setData()-t egy ListFragment-ben hívom meg, egy Loader részeként:

    public void onLoadFinished(Loader<List<SampleEntry>> loader, List<SampleEntry> data)
    {
    ((MainListAdapter)getListAdapter()).setData(data);
    }

    Az első végrehajtáskor ez tökéletesen működik. Ha elfordítom a készüléket, akkor is lefutnak a fenti metódusok, de - a notifyDataSetChanged() - hívás ellenére NEM jelenik meg semmi.
    Ha ekkor frissítem a listát (pl. még egy elemet hozzáadok), akkor az EGÉSZ lista megjelenik, vagyis az összes elemet tartalmazza.
    Ha az elemet (próbaként) a setData() részben adom hozzá, akkor sem jelenik meg a lista.

    Rengeteget olvastam a notifyDataSetChanged()-ről, de nem jutottam eredményre. Az a gyanúm, hogy nincs még ListView, amikor az első setData() lefut, ezért nem tud még mit frissíteni.

    Hogyan tudnám ezt megoldani??

Új hozzászólás Aktív témák