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

  • Cartoonium

    Cartoonium

    11 NİSAN 2011
  • Dellbear816

    Dellbear816

    4 Mart 2008
  • TheDailyTechDose

    TheDailyTech

    15 EKİM 2012