2014-02-13 5 views
0

В моем проекте у меня есть две радиокнопки под группой радио. По умолчанию выбрана первая радиокнопка. Когда первая радиокнопка находится в выбранном состоянии, четыре флажка будут видны, если выбран второй переключатель заявить, что все четыре флажка уйдут в невидимое состояние. Я не знаю, как это реализовать. Может кто-нибудь предложить мне?Выбор радиокнопки в Android

спасибо !!!

+0

установить видимость группы радио в VIEW.GONE –

ответ

2

Слишком просто. Раньше вы упомянули, что в первый раз, когда выбран ваш первый переключатель, тогда вам нужно просто установить видимость для флажков. Как

ch1.setVisibility(View.VISIBLE); // same for other checkboxes 

И когда вы выбираете второй переключатель в то время набора видимости для этого флажков Gone. Как

ch1.setVisibility(View.GONE); // same for other checkboxes 

UPDATE:

radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

    @Override 
    public void onCheckedChanged(RadioGroup group, int checkedId) { 
     // TODO Auto-generated method stub 
     if(checkedId == R.id.urfirstR1) 
      { 
       ch1.setVisibility(View.VISIBLE); 

     else if(checkedId == R.id.ursecondr2) 
      { 
       ch1.setVisibility(View.GONE); 
      } 
    } 
}); 
+0

Да, и вы правы. Я хочу, чтобы это произошло, когда переключатель радиосвязи изменился ... Где я ставлю это условие в Oncreate()? – Barbie

+0

yes on oncreate() oncheckedChangeListener of RadioGroup. Чек мой обновленный ответ. – Piyush

+0

проверить мой обновленный ответ. – Piyush

0

принять эту ссылку и делать свою работу в соответствии с этим условием http://www.mkyong.com/android/android-radio-buttons-example/

принять весь флажок под одной раскладкой и невидимый или видимый, что расположение согласно этому примеру

0

Попробуйте следующее

radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

@Override 
    public void onCheckedChanged(RadioGroup group, int checkedId) { 

     if(checkedId == R.id.firstradiobutton) 
       { 
       // visible all checkbox here 
       } 

     else if(checkedId == R.id.secondradiobutton) 
       { 
        // invisible all checkbox here 
       } 
     } 
    }); 
0

Попробуйте ниже решение.

По умолчанию вам не нужно ничего делать. и onCheckchangelistener используйте код ниже.

radiobutton2.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

     @Override 
     public void onCheckedChanged(RadioGroup group, int checkedId) { 
      ch1.setVisibility(View.INVISIBLE); 
      ch2.setVisibility(View.INVISIBLE); 
      ch3.setVisibility(View.INVISIBLE); 
     ch4.setVisibility(View.INVISIBLE); 
     } 
    }); 

Положите это в свой метод onCreate. и замените идентификационное имя флажков и переключателей в соответствии с вашими идентификационными именами.

Смежные вопросы