2016-03-02 9 views
0

Я делаю это в своей функции getView, но проблема в том, что когда я просматриваю вверх и вниз, все переключатели будут включены, даже если часть «IF» не работает. Я использовал контрольную точку, чтобы проверить, работает ли IF, но это не так, но все кнопки проверяются. Я устанавливаю кнопки только здесь.установка текста toggleView в функции getVIew()

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

Я думаю, что больше информации здесь. Можете ли вы предоставить больше кода адаптера и файла макета. –

+0

Это, похоже, проблема с тем, как Android повторно использует элементы ListView. Легким решением было бы поставить 'tb.setChecked (false);' перед этим оператором 'if'. Это явно отключится, если только оно не пройдет через 'if'. –

+0

Вы являетесь ли вы строкой, а не int? – drWisdom

ответ

0

Вы можете изначально установить кнопку, которая не должна быть проверена. Это сделает так, чтобы кнопка во всех элементах списка не была отмечена, если только она не передала ваш оператор if.

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