SORU
16 Kasım 2010, Salı


Liste güncelleme görünüm adaptörü veriler değiştiğinde

Veri dizisi adaptör ile ilişkili değiştirildiğinde, liste görünümü geçersiz güncelleştirilmiş değerleri göstermek için yeterli mi? Kod parçası çalışmıyor şu, ben bir şey yanlış burada.

public class ZeroItemListActivity extends Activity {
    private ArrayList<String> listItems=new ArrayList<String>();
    private ListView mMyListView;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        mMyListView=(ListView) findViewById(R.id.MyListView);
        mMyListView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,listItems));
    }
    public void addItem(View v){
        listItems.add("list Item");
        mMyListView.invalidate();
    }
}

Düzeni kullanılır :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:text="@string/hello" />
    <ListView android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:id="@ id/MyListView"></ListView>
    <Button android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:id="@ id/AddItemsButton"
        android:text="Add Items" android:onClick="addItem"></Button>
</LinearLayout>

CEVAP
16 Kasım 2010, Salı


yedek:

mMyListView.invalidate();

için:

((BaseAdapter) mMyListView.getAdapter()).notifyDataSetChanged(); 

Eğer bu işi bırakmazsa bu konuyu bakın: Android List view refresh

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • André Frizzo

    André Frizz

    16 Aralık 2006
  • Arun Kumar

    Arun Kumar

    18 Mart 2010
  • Blunty

    Blunty

    13 Mart 2006