2016-03-02 55 views
0

我在我的getView函數中這樣做,但問題是當我向上和向下滾動時,即使「IF」部分不起作用,所有toggleView都變爲ON。我已經使用了一個斷點來檢查IF是否在那裏工作,但它沒有,但仍然檢查了所有的按鈕。我在這裏設置按鈕檢查在getVIew()函數中設置toggleView文本

if((Btns[position].equals("1")) && (!tb.isChecked())){ 
    tb.setChecked(true); 
} 
+0

我想在這裏需要更多的信息。你能提供更多的適配器代碼和佈局文件嗎? –

+0

這似乎是Android重用ListView項目的一個問題。一個簡單的解決辦法是在'if'語句之前加'tb.setChecked(false);'。這將明確確保它關閉,除非它通過'if'。 –

+0

你是位置是一個字符串,而不是一個int? – drWisdom

回答

0

您可以初始設置按鈕不檢查。這將使得所有列表項中的按鈕都將被取消選中,除非它通過了你的if語句。

tb.setChecked(false); 
if((Btns[position].equals("1")) && (!tb.isChecked())){ 
    tb.setChecked(true); 
}