2013-03-01 108 views
0

在我的應用程序中,我使用的自定義Listview的行爲TextView和CheckBox
現在我想當我檢查CheckBox那時各自的行必須Disable(unfocasable)。
應該是什麼裏面的代碼複選框OnCheckedChangeListener
我也試圖禁用的RowLayout內監聽器,但沒有得到成功......
以下是代碼我使用適配器的getView方法中當複選框被選中時禁用列表視圖行

final RelativeLayout RL=(RelativeLayout)convertView.findViewById(R.id.VTRLmain); 
     check.setOnCheckedChangeListener(new OnCheckedChangeListener() 
     { 
      @Override 
      public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) 
      { 
       if (isChecked) 
       { 
        RL.setEnabled(false); 
        templist.add(getItem(position));//using for another activity 
       } 
      } 
     }); 
+0

把你的所有代碼的意思持有人在這裏 – 2013-03-01 13:05:53

+0

簡單,如果別的可以在這裏工作。如果複選框被選中,則不執行任何操作。但這不會禁用行可聚焦 – 2013-03-01 13:08:14

+0

我正在使用另一個列表檢查項目..所以什麼都不可行 – Pravin 2013-03-01 13:54:22

回答

0

在該適配器有一個名爲isEnabled的方法,您可以將其覆蓋。試着在你的自定義適配器做

試試這個代碼:

@Override 
public boolean isEnabled(int position) { 
if(checkbox1.isChecked()){ 
    return false; 
} 
return true; 
} 
+1

不工作..... – Pravin 2013-03-01 13:41:34

2

給在XML代碼爲checkbox

android:focusable="false" 

它不會隱藏列表視圖textboxs。

並檢查應用程序theme

+0

xml代碼不重要。適配器類中應該有代碼 – Pravin 2013-03-01 13:55:28

相關問題