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

  • ImBluecams

    ImBluecams

    25 Kasım 2012
  • ItZWaffleS420

    ItZWaffleS42

    9 EYLÜL 2011
  • whiteboy7thst

    whiteboy7ths

    1 Temmuz 2009