2016-03-25 10 views
0

vielleicht ist es nicht schwer, aber ich kann nicht lösen meine Liste Problem. Ich habe einen Listview aus der Liste eingefügt.Android Listview Problem (Notifydatasetchanged())

 @Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    // TODO Auto-generated method stub 

    super.onActivityResult(requestCode, resultCode, data); 

    if (requestCode == 2) { 

     String kpn = data.getStringExtra("kupeno"); 
     txtddtyKupeNo.setText(kpn); 


    } 
    if (resultCode == 3) { 
     ArrayList<BuzagiKayitDBean> arraylist = data.getParcelableArrayListExtra("mylist"); 

     adapter = new BuzagiListAdapter(dty, BuzagiKayitActivity.this); 

     for (BuzagiKayitDBean item : arraylist) { 
      dty.add(item); 
     } 

     if (buzlist.getCount() > 0) { 

      buzlist.setAdapter(adapter); 
      adapter.notifyDataSetChanged(); 
     } else { 
      buzlist.setAdapter(adapter); 
     } 

    } 
} 

und nichts ändert sich bei listview? Was mache ich falsch? Tyvm.

Edit (wie dies geändert und noch nicht aktualisiert wird. Ich habe 2 Artikel onlist sondern zeigt nur 1) Edit 2 (den Code aktualisiert, aber immer noch nicht verdammt)

+0

sind Sie adapter einige andere außer sonst? weil Sie Ihre Liste auffüllen und Sie müssen den Adapter zuerst in der if-Klausel setzen –

+0

Können Sie Listview-Elemente anzeigen? Was du machen willst? Kannst du etwas mehr erklären? – Raghavendra

+0

Was ist, wenn buzlist.getCount()> 0 und Ihr Adapter ist null. Hast du darüber nachgedacht? – KDeogharkar

Antwort

0

Sie müssen Ihre Logik ändern, denn jedes Mal, wenn Sie geben diese Ruhe des Codes buzlist.getCount() > 0, Ihre adapter wird aways null Sie haben nicht initialisiert oder setzen Sie den Adapter.Oder Weise müssen Sie Adapter und wenn Ihre Liste ist > 0.

1

Zuerst init Ihre adapter so schnell wie möglich, fügen Sie Anruf setAdapter(); Dann, wenn Sie Daten bereit ist, fügen Sie eine Methode für Sie wie appendList(List<T> list) Adapter Daten auf Ihren Adapter anzuhängen!

public void appendList(DailyStories dailyStories) { 
    //todo addList() 
    notifydatasetChanged(); 
} 

ich empfohlen, dass Sie RecycleView verwenden ListView zu ersetzen, es leistungsstärker ist !!

+0

Noch nicht arbeiten ... –

Verwandte Themen