2011-03-24 69 views
0

[機器人] 我想要在列表視圖複選框alistener但我在那裏我寫的複選框聽者(複選框ID在row.xml佈局定義)複選框聽者問題

+1

粘貼你的代碼..它會很容易調試.. – Venky 2011-03-24 14:57:59

+0

聽起來像你沒有使用findViewById(...)來獲取CheckBox,但是 - 源代碼。 – Klaus 2011-03-24 14:59:26

回答

0

我行了空指針異常有一個樣品運行:

mContactList.setOnItemClickListener(new OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View view, 
       int position, long id) { 
      Log.i("onClick", "sur un Item"); 
      LinearLayout linear = (LinearLayout) view; 
      CheckBox registeredBox = (CheckBox) linear 
        .findViewById(R.id.registered_checkbox); 
      if (registeredBox.isChecked()) // your code 

     } 
}); 

和我的列表項的佈局看起來像

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_height="wrap_content" android:baselineAligned="false" android:layout_width="fill_parent"> 
     <TableRow android:id="@+id/tableRow2" android:layout_height="fill_parent" android:layout_width="fill_parent" android:gravity="left|right" android:padding="5px"> 
      <LinearLayout android:id="@+id/linearLayout1" android:orientation="vertical" android:layout_height="wrap_content" android:minHeight="25px" android:layout_width="wrap_content"> 
       <TextView android:layout_height="wrap_content" android:id="@+id/ContactName" android:textSize="18px" android:text="@+id/ContactName" android:layout_width="fill_parent"></TextView> 
       <TextView android:layout_height="wrap_content" android:id="@+id/ContactStatus" android:textSize="12px" android:scrollHorizontally="true" android:textStyle="italic" android:layout_width="fill_parent" android:text="Ceci est mon statut"></TextView> 
      </LinearLayout> 
     <TableRow android:layout_height="fill_parent" android:id="@+id/indicator_logo_table" android:visibility="visible" android:layout_width="fill_parent" android:minHeight="25px" android:gravity="right"> 
      <CheckBox android:checked="false" android:text="CheckBox" android:id="@+id/registered_checkbox" android:visibility="invisible" android:layout_height="1dip" android:layout_width="1dip"></CheckBox> 
      <ImageView android:id="@+id/wish_button" android:paddingLeft="5px" android:paddingRight="5px" android:src="@drawable/wishbutton" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_gravity="right" android:clickable="true"></ImageView> 
     </TableRow> 
    </TableRow> 
</LinearLayout> 

希望它能幫助!

+0

謝謝你刪除了異常,但我想在複選框上做事件,只有當我點擊複選框時,我纔會做點什麼,而不是當我點擊列表項目時有任何幫助? – user651280 2011-03-27 09:41:01