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

  • AmeriiK_HD

    AmeriiK_HD

    16 AĞUSTOS 2012
  • Rootjunky.com

    Rootjunky.co

    22 EKİM 2011
  • superemposed

    superemposed

    25 Aralık 2007