2012-04-05 5 views
7

freunde. Ich habe ein wirklich dummes Problem mit der Radiogruppe. Aber ich kann keine Lösung finden.android radiobutton check nach dem clearing check ausgabe

Ich werde versuchen zu beschreiben, wie ich mein Problem reproduzieren: Ich habe Radiobutton-Gruppe und zwei Tasten im Inneren. Ich wähle eine von ihnen, sagen wir die erste. Dann lösche ich Auswahl durch Aufruf radioGroup.clearCheck() Nachdem ich versuche, 1. Schaltfläche auswählen, aber es nicht überprüft. Wenn ich 2. überprüfe, wird normal geprüft. Wenn ich nach Überprüfung von 2 zuerst überprüfe, funktioniert es auch normal.

Das klingt vielleicht verrückt, aber ich kann es nicht beheben. Bitte hilf mir, danke im Voraus.

Ich benutze

@Override 
protected void init() { 
    View view = View 
      .inflate(getContext(), R.layout.wo_task_yn_result, null); 

    performed = (RadioButton) view.findViewById(R.id.yn_yes); 
    notPerformed = (RadioButton) view.findViewById(R.id.yn_no); 

    radioGroup = (RadioGroup) view.findViewById(R.id.yn_options); 

    performed.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

     @Override 
     public void onCheckedChanged(final CompoundButton buttonView, 
       final boolean isChecked) { 
      Log.d(YES, "verify"); 
      if (isChecked) { 
       Log.d(YES, "checked"); 
       result = YES; 
      } 
     } 
    }); 

    notPerformed.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

     @Override 
     public void onCheckedChanged(final CompoundButton buttonView, 
       final boolean isChecked) { 
      Log.d(NO, "verify"); 
      if (isChecked) { 
       Log.d(NO, "checked"); 
       result = NO; 
      } 
     } 
    }); 

    addView(view); 
} 

Tasten zu erstellen und

@Override 
public void clear() { 
    radioGroup.clearCheck(); 

    result = ""; 
} 

für sie

+0

es wäre am besten, wenn Sie thde Code für die Tasten zeigen – Akhil

+0

Ok, ich habe meine Fragen aktualisiert. Hoffe, dieser Code ist genug. – Orest

+0

Nevermind, ich habe eine Lösung gefunden. – Orest

Antwort

0

wenn u wollen Optionsfeld versuchen, diese Methode zu deaktivieren:

@Override 
public void clear() { 

performed.setChecked(false); 

nonperformed.setChecked(false); 

} 
16

ich hatte das gleiche Problem. Der erste RadioButton in der Gruppe konnte nicht ausgewählt werden, aber die anderen beiden können ausgewählt werden. Und nachdem ich den zweiten RadioButton ausgewählt hatte, konnte ich auch den ersten auswählen. Ich löste es, indem ich eine einzelne radioGroup.clearCheck() anstelle von einzelnen radioButtonA.setChecked (false)

+0

Ich habe radioGroup.removeAllViews() verwendet, um alle Ansichten zu entfernen. Ich denke auch, dass alle überprüften Artikel klar sein werden. Aber es ist keine Arbeit. Aber radioGroup.clearCheck() funktioniert wie ein Charme. Danke vielmals –