Флажок Android включить и отключить

У меня вопрос,

У меня есть флажок, это cb1, cb2, cb3, cb4. Я хочу, когда я проверил cb1, тогда cb2 будет отключен, а cb3, cb4 останется включенным, после этого я снова проверил cb3, тогда cb4 тоже будет отключен.

Первый шаг работал хорошо, но когда я пытаюсь проверить cb3, то cb4 не отключается. есть мой код

public void onCheckboxClicked(View v){

    CheckBox cb1= (CheckBox)findViewById(R.id.cb1);
    CheckBox cb2= (CheckBox)findViewById(R.id.cb2);
    CheckBox cb3= (CheckBox)findViewById(R.id.cb3);
    CheckBox cb4= (CheckBox)findViewById(R.id.cb4);


    switch (v.getId()) {
    case R.id.cb1:
        if (cb1.isChecked()) {
            cb2.setEnabled(false);

        }else {
            cb2.setEnabled(true);


        }

        break;

    //......

пожалуйста, помогите мне, ребята!

Обновить вопрос:

что я имею в виду, что-то вроде этого, у меня есть 10 флажков, когда я проверял один из них, количество флажков, которые можно отметить, стало 5, затем, когда один из этих 5 флажков установлен, тогда он снова будет уменьшено до 2 флажков, где можно установить флажок, будет так до тех пор, пока не останется флажков, которые можно будет отметить


person Community    schedule 14.03.2014    source источник
comment
Я думаю, вам нужно использовать переключатель вместо этого   -  person Nabin    schedule 14.03.2014
comment
Под отключенным вы на самом деле подразумеваете непроверенный или действительно отключенный, например, не кликабельный? В последнем случае предоставьте код, в котором вы пытаетесь отключить cb4 при проверке cb3.   -  person kiruwka    schedule 14.03.2014
comment
Вместо этого используйте кнопку группы радио.   -  person Piyush    schedule 14.03.2014
comment
на основе вашего обновления: тогда какова процедура возврата пользователя от флажков, которые больше не могут быть проверены, до 10 флажков?   -  person kiruwka    schedule 14.03.2014
comment
процедура заключается в том, что в момент, когда последний флажок установлен, он становится не отмеченным, он сделает флажок отключения снова включенным, когда флажок больше не установлен, тогда все 10 флажков будут включены для проверки   -  person user3284126    schedule 14.03.2014
comment
to: kiruwka я имею в виду не кликабельный, ответ, который вы дали раньше, на самом деле правильный, но я не знал, где я должен поместить следующий код для отключения cb4, когда я проверил cb3   -  person user3284126    schedule 15.03.2014


Ответы (1)


Попробуйте сделать вот так

switch (v.getId()) {
case R.id.cb1:
    if (cb1.isChecked()) {
        cb2.setChecked(false);
    }else {
        cb2.setChecked(true);


    }

    break;
person Saj    schedule 14.03.2014
comment
что я имею в виду, примерно так, у меня есть 10 чекбоксов, когда я проверял один из них, то количество чекбоксов, которые можно было отметить, превратилось в 5, затем, когда один из этих 5 чекбоксов установлен, то он будет уменьшен снова на 2 флажка, где включена возможность проверки, будет так до тех пор, пока не будет больше флажков, которые можно проверить - person user3284126; 14.03.2014