我正在開發一個簡單的應用程序在Android中。我有一個類別列表(現在),我想顯示爲一個列表,然後(但這是很遙遠的)點擊,啓動一些功能的另一個活動......以及情況:我在哪裏指定哪些值在使用自定義適配器的listView中的哪裏?
我single_list_item.xml:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<!-- Name Label -->
<TextView android:id="@+id/category_label"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:paddingTop="10dip"
android:paddingBottom="10dip"
android:textColor="#43bd00"/>
<!-- Description Label -->
</LinearLayout>
在這裏的主要活動就是我所說的適配器和佈局:
List<categorie> values = datasource.getAllCategorie();
// Use the SimpleCursorAdapter to show the
// elements in a ListView
ArrayAdapter<categorie> adapter = new ArrayAdapter<categorie>(this,
R.layout.single_list_item, values);
setListAdapter(adapter);
在這裏的數據源是在哪裏聲明getAllCategorie:
public List<categorie> getAllCategorie() {
List<categorie> categorie = new ArrayList<categorie>();
Cursor cursor = database.query(MySQLiteHelper.TABLE_CATEGORIE,
allCategorieColumns, null, null, null, null, null);
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
categorie categoria = cursorToCategorie(cursor);
categorie.add(categoria);
cursor.moveToNext();
}
// Make sure to close the cursor
cursor.close();
return categorie;
}
終於categorie.class:
public class categorie {
private long id;
private String nome;
private long preferita;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public long getPreferita() {
return preferita;
}
public void setPreferita(long preferita) {
this.preferita = preferita;
}
// Will be used by the ArrayAdapter in the ListView
@Override
public String toString() {
return nome;
}
}
目前,如果我運行應用程序,它在啓動列表視圖凍結,這使得它完全是空的。我想指定每個類別元素的位置,例如名稱或ID,或者它是否「喜歡」(在categorie.class中獲取並設置Preferita)。
當我開始,適配器的部分是:
ArrayAdapter<categorie> adapter = new ArrayAdapter<categorie>(this,
android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
,一切都奇蹟般地好......爲什麼使用默認佈局OK?再次,我在哪裏指定什麼地方?
在此先感謝。