установка переключателя для другой задачи

Я пытаюсь показать группу радио в диалоговом окне, и когда нажимается переключатель, он устанавливает некоторые данные в общих настройках. Я могу сделать тост, когда нажата любая кнопка, но я хочу что-то сделать, когда нажата другая кнопка. Я попытался установить Onclick в переключателе, но он не работает. Я пытаюсь учиться у здесь это мой диалоговый класс

 public Activity c;
public Dialog d;
public Button yes, no;
public RadioGroup radioGroup;
public RadioButton radioButton;

public CustomDialogClass(Activity a) {
    super(a);
    // TODO Auto-generated constructor stub
    this.c = a;
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.custom_dialog);
    yes = (Button) findViewById(R.id.btn_yes);
    no = (Button) findViewById(R.id.btn_no);
    yes.setOnClickListener(this);
    no.setOnClickListener(this);
    Radioactive();
}

private void Radioactive() {
    radioGroup = (RadioGroup) findViewById(R.id.radio);
    int selectedId = radioGroup.getCheckedRadioButtonId();
    radioButton = (RadioButton) findViewById(selectedId);




}

Я просто хочу знать, как что-то сделать, когда установлен конкретный переключатель.


person Neelay Srivastava    schedule 01.09.2016    source источник
comment
Все ли ваши RadioButton заключены в тег RadioGroup и имеют отдельные идентификаторы? Кроме того, RadioActive() должен быть внутри метода onClick(), поэтому поделитесь им тоже.   -  person Shaishav    schedule 01.09.2016
comment
я все в RadioGroup с другим идентификатором   -  person Neelay Srivastava    schedule 01.09.2016


Ответы (1)


Вы можете добиться щелчка переключателя следующим образом. Для получения дополнительной информации android onCheckedChanged для радиогруппы для различных функций

radioGroup
    .setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(RadioGroup group, int checkedId) {
 Log.d("chk", "id" + checkedId);

            if (checkedId == R.id.a) {
                //some code
            } else if (checkedId == R.id.b) {
                //some code
            }

        }

    });
person Rajendra    schedule 01.09.2016