2014-11-24 2 views
0

Я хочу сделать Android App Quiz. Я сделал радиогруппу с 4 радиокнопками, которые представляют 4 ответа. Я хочу, чтобы, когда эти радиокнопки не были нажаты, приложение показывает ошибку, но мой не делает этого. Это мой код:Android: Radiobutton не проверен

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.fragment_main); 
     RadioGroup champ=(RadioGroup)findViewById(R.id.answer1); 


     champ.setOnCheckedChangeListener(new OnCheckedChangeListener() { 
       @SuppressWarnings("null") 
       public void onCheckedChanged(RadioGroup group, int checkedId) { 
        // TODO Auto-generated method stub 

        switch(checkedId) { 

        case R.id.answer1A: 
         ans1 =0; 
         break; 
        case R.id.answer1B: 
         ans1 =1; 
         break; 
        case R.id.answer1C: 
         ans1 =2; 
         break; 
        case R.id.answer1D: 
         ans1 =3; 
         break; 
        case R.id.answer1E: 
         ans1 =4; 
         break; 
        default: 
         ans1=(Integer) null; 
         Toast.makeText(MainActivity.this, "error", Toast.LENGTH_LONG).show(); 
         break; 

        } 
       } 
      }); 

Почему вы можете мне помочь, пожалуйста?

+0

вы проверяете его на listener..just проверить его вне listener..if любой радиокнопки щелкает или not..if не затем показать тост .. – Meenal

ответ

0

Первый правопреемником:

ans1=-1; //in onCreate or at the time of declaration 

Вы можете быть с кнопки или что-то щелчки, на котором будет осуществляться доступ к какой ответ был установлен, то вы можете проверить:

if(ans1==-1) 
{ 
    //show error message 
} 
else 
{ 
    //Success 
} 
+0

Modifico иль млн Codice в Questo Модо: если (champ.getCheckedRadioButtonId() == -1) \t \t { \t \t \t Toast.makeText (MainActivity.this, "ошибка", Toast.LENGTH_LONG) .show(); \t \t} \t \t еще { \t \t \t champ.setOnCheckedChangeListener (новый OnCheckedChangeListener() { , но он не работает – user3582433

0

Эта проверка не потому что это проверочныйchangelistener, который будет срабатывать, когда вы нажмете на какой-нибудь радиообъем (когда статус будет изменен).

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

+0

очень неясный ответ. Пожалуйста elaborte или дать пример того, как это может работать. -1 для неполной и вводящий в заблуждение ответ. – Khay

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