Ich habe zwei RadioButton
s in einem RadioGroup
. Ich möchte OnClickListener
auf diese RadioButton
s setzen. Je nachdem, auf was RadioButton
geklickt wird, möchte ich den Text eines ändern EditText
. Wie kann ich das erreichen?
android
radio-button
radio-group
Mayur Rahatekar
quelle
quelle
Hoffe das wird dir helfen ...
und
quelle
quelle
group
wird benötigt inRadioButton rb=(RadioButton)group.findViewById(checkedId);
Die Frage betraf das Erkennen, auf welches Optionsfeld geklickt wird. Auf diese Weise können Sie ermitteln, auf welches Optionsfeld geklickt wird
quelle
Sie können auch einen Listener aus dem XML-Layout hinzufügen:
android:onClick="onRadioButtonClicked"
in Ihrem<RadioButton/>
Tag.Weitere Informationen finden Sie unter SDK-Optionsfelder für Android-Entwickler .
quelle
Nur für den Fall, dass jemand anderes mit der akzeptierten Antwort zu kämpfen hatte:
Es gibt verschiedene OnCheckedChangeListener-Schnittstellen. Ich habe zum ersten hinzugefügt, um zu sehen, ob eine CheckBox geändert wurde.
vs.
Beim Hinzufügen des Snippets von Ricky hatte ich folgende Fehler:
Kann mit der Antwort von Ali behoben werden:
quelle
Da diese Frage nicht spezifisch für Java ist, möchte ich hinzufügen, wie Sie dies in Kotlin tun können :
Hier
radio_group_id
ist die Zuordnungandroid:id
der betreffenden RadioGroup. Um es auf diese Weise zu verwenden, müssten Siekotlinx.android.synthetic.main.your_layout_name.*
in die Kotlin-Datei Ihrer Aktivität importieren . Beachten Sie auch, dass derradioGroup
Lambda-Parameter , falls er nicht verwendet wird,_
seit Kotlin 1.1 durch (einen Unterstrich) ersetzt werden kann .quelle
quelle
Für Kotlin Hier wird der Lambda-Ausdruck hinzugefügt und der Code optimiert.
Hoffe das wird dir helfen. Vielen Dank!
quelle