我正在嘗試使用網絡中的ListActivity
示例。我遇到使用自定義列表佈局的問題。這是我的代碼:無法使用ListActivity自己的佈局選擇項目
public class Test1Activity extends ListActivity {
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
"Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
"Linux", "OS/2" };
//ArrayAdapter<String> standard_adapter = new ArrayAdapter<String> (this,android.R.layout.simple_list_item_1, values);
ArrayAdapter<String> my_adapter = new ArrayAdapter<String>(this, R.layout.mylistlayout, R.id.label,values);
setListAdapter(my_adapter);
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
String item = (String) getListAdapter().getItem(position);
Toast.makeText(this, item + " selected", Toast.LENGTH_LONG).show();
}}
onListItemClick
當我使用標準適配器時工作正常。但是在使用我的適配器時它不起作用。事實上,當我點擊列表項目時,甚至沒有看到任何突出顯示。這是爲什麼發生。我是否缺少一些代碼?
mylistlayout
是一個簡單的LinearLayout
與TextView
(ID label
)和Button
(ID button1
)。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<TextView
android:id="@+id/label"
android:layout_width="287dp"
android:layout_height="wrap_content"
android:text="items" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="32dp"
android:padding="0dp"
android:text="X" />