我有一个RadioGroup
内的两个RadioButton
秒。我想在这些RadioButton
上设置OnClickListener
。根据点击哪个RadioButton
,我想更改EditText
的文字。我怎样才能做到这一点?如何在Android的RadioButton上设置OnClickListener?
回答
我认为更好的办法是使用RadioGroup
并设置监听这个变化和更新View
因此(节省你有2或3或4等听众)。在<RadioButton/>
标签android:onClick="onRadioButtonClicked"
:
RadioGroup radioGroup = (RadioGroup) findViewById(R.id.yourRadioGroup);
radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// checkedId is the RadioButton selected
}
});
希望这将帮助你...
RadioButton rb = (RadioButton) findViewById(R.id.yourFirstRadioButton);
rb.setOnClickListener(first_radio_listener);
和
OnClickListener first_radio_listener = new OnClickListener(){
public void onClick(View v) {
//Your Implementaions...
}
};
有时是清晰的有三个独立的处理程序。+1 –
工作就像一个魅力,不要忘记你过去的大括号后您的点击收听 – inVINCEable
您也从XML布局添加监听器。
<RadioButton android:id="@+id/radio_pirates"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/pirates"
android:onClick="onRadioButtonClicked"/>
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener()
{
public void onCheckedChanged(RadioGroup group, int checkedId) {
// checkedId is the RadioButton selected
RadioButton rb=(RadioButton)findViewById(checkedId);
textViewChoice.setText("You Selected " + rb.getText());
//Toast.makeText(getApplicationContext(), rb.getText(), Toast.LENGTH_SHORT).show();
}
});
万一别人与接受的答案struggeling:
有不同OnCheckedChangeListener接口。我添加到第一个看看CheckBox是否被更改。
import android.widget.CompoundButton.OnCheckedChangeListener;
VS
import android.widget.RadioGroup.OnCheckedChangeListener;
当从瑞奇添加片断我有错误:
在类型RadioGroup中的方法setOnCheckedChangeListener(RadioGroup.OnCheckedChangeListener)是不适用的参数(新CompoundButton.OnCheckedChangeListener(){})
可以固定答案从阿里:
new RadioGroup.OnCheckedChangeListener()
的问题是关于检测哪个单选按钮被点击,这是你如何能得到被点击
final RadioGroup radio = (RadioGroup) dialog.findViewById(R.id.radioGroup1);
radio.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
View radioButton = radio.findViewById(checkedId);
int index = radio.indexOfChild(radioButton);
// Add logic here
switch (index) {
case 0: // first button
Toast.makeText(getApplicationContext(), "Selected button number " + index, 500).show();
break;
case 1: // secondbutton
Toast.makeText(getApplicationContext(), "Selected button number " + index, 500).show();
break;
}
}
});
哪个按钮由于这问题不是特定于Java,我想补充说明如何在Kotlin:
radio_group_id.setOnCheckedChangeListener({ radioGroup, optionId -> {
when (optionId) {
R.id.radio_button_1 -> {
// do something when radio button 1 is selected
}
// add more cases here to handle other buttons in the RadioGroup
}
}
})
这里radio_group_id
是有关RadioGroup中的分配android:id
。要以这种方式使用它,您需要在您活动的Kotlin文件中导入kotlinx.android.synthetic.main.your_layout_name.*
。还要注意,在情况下,radioGroup
拉姆达参数是未使用的,它可以被用_
(下划线),因为科特林1.1代替。
- 1. 如何在通知上设置onclicklistener android
- 2. 如何设置onClickListener上RecyclerView
- 3. WPF如何在RadioButton上设置样式?
- 4. 如何在ArrayAdapter上设置onClickListener?
- 5. 如何在ImageButton上设置OnClickListener
- 6. onClickListener在Activity上设置
- 7. 如何在android软键盘上设置onClickListener按钮?
- 8. Android:如何重置RadioButton ID?
- 9. 在ASP上的设置值:RadioButton
- 10. 如何为CalendarView设置OnClickListener?
- 11. 如何使drawline设置onClickListener?
- 12. 设置onclicklistener在recyclerview
- 13. 如何在Android小部件中设置ImageView的onClicklistener方法?
- 14. 如何在Android中设置ImageView的onClicklistener方法?
- 15. 我如何设置onClickListener和onTouchListenere在android中的视图类上的两个
- 16. 如何在ViewPager中设置OnClickListener
- 17. 如何在Fragement中设置onClickListener
- 18. 如何在TextInputLayout中设置OnClickListener
- 19. 如何在android中设置一个onClickListener除了屏幕上的元素
- 20. 如何在包含的布局上设置onClickListener?
- 21. 如何在AsyncTask中的RecyclerView项目上设置OnClickListener
- 22. 如何在OnClickListener android上获取选定的CardView位置?
- 23. 在复选框文本上设置onClickListener
- 24. 如何在旋转动画后在ImageView上设置OnClickListener
- 25. 设置为EmptyView按钮onClickListener的Android
- 26. 设置onclicklistener到numberpicker dynammicaly加入Android的
- 27. 设置onClickListener
- 28. 如何在快餐栏android中设置Onclicklistener动作?
- 29. 我如何设置OnClickListener实现OnClickListener的类内的按钮
- 30. 如何设置视图中的OnClickListener
不是为我工作添加一个分号,Eclipse的建议我加@覆盖,而固定。由于 –
啊,我会用RadioGroup中,除了它在XML不工作,除非其直接父,我不能把它作为一个直接的父母,因为这个愚蠢的单选按钮无法对齐居中,所以我不得不把它们放在一个LinearLayout中... –
你可以在RadioGroup标签下的xml中放置** android:gravity =“center”**来尝试将radiobutton对中。 @RudolfRein – OuuGiii