2012-04-29 45 views
0

我正在嘗試使用網絡中的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是一個簡單的LinearLayoutTextView(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" /> 

回答

0

嘗試添加:

android:focusable="false" 

Button在XML佈局。

0

嘗試將此屬性添加到您的mylistlayout的LinearLayout中:

android:descendantFocusability="blocksDescendants"

相關問題