SORU
1 EKİM 2009, PERŞEMBE


Android: bir liste Görünümü içinde bir Onay kutusu için bir veritabanından veri Bağlama?

SQLiteDatabase ListView benim veri bağlamak için çalışıyorum. Şu anda SimpleCursorAdapter ListView benim doldurmak için kullanıyorum. Ne yazık ki bu bir Onay kutusunu kontrol ettim öznitelik ayarı ile çalışmak için görünmüyor.

Bu şimdi nasıl yaptığımı; Onay kutusunu kontrol ettim durumu değiştirmek yerine adaptör değeri Onay kutusunu sağ metin olarak görüntülenmesi için metin değişkeni için değer tutmuş.

Java:

setListAdapter( new SimpleCursorAdapter( this,
      R.layout.mylist,
      data,
      new String[] { Datenbank.DB_STATE, Datenbank.DB_NAME },
      new int[] { R.id.list_checkbox, R.id.list_text }
    ) );

mylist.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="@ id/LinearLayout01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
>

<CheckBox android:text=""
    android:id="@ id/list_checkbox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:checked="false"
    ></CheckBox>

<TextView android:text=""
    android:id="@ id/list_text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    ></TextView>

</LinearLayout>

Veritabanında alan türü boolean tabii ki de kontrol alanına bir kimlik değeri doldurmak için atamak için çalıştım. Edit:

CEVAP
28 Kasım 2009, CUMARTESİ


Bir özel SimpleCursorAdapter.ViewBinder ayarlayabilirsiniz:

SimpleCursorAdapter cursorAdapter = new SimpleCursorAdapter(/* ur stuff */);
cursorAdapter.setViewBinder(new SimpleCursorAdapter.ViewBinder() {
    public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
    	if(columnIndex == 1) {
    		CheckBox cb = (CheckBox) view;
    		cb.setChecked(cursor.getInt(1) > 0);
    		return true;
    	}
    	return false;
    }
});

setViewValue yöntemi SimpleCursorAdapter kurucu belirtmek ve bazı (veya tüm) görünümleri işlemek için iyi bir yer sağlar her sütun için çağrılır.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Amena

    Amena

    15 Kasım 2006
  • Rachel Talbott

    Rachel Talbo

    26 Ocak 2011
  • thewinekone

    thewinekone

    17 Aralık 2005