我正在使用无线电组,但 RadioGroup
onClick
事件未触发并且getCheckedRadiobuttonID()
方法返回 null
.这是我的布局中的元素:
I'm using radio group but RadioGroup
onClick
event is not firing and
the method getCheckedRadiobuttonID()
is returning null
. Here is the element in my layout:
<RadioGroup
android:id="@+id/RG1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:onClick="onRGClick" >
方法
public void onRGClick(View v) {
Toast.makeText(this, "Test ", 1000).show();
}
这个问题可以用下面的方法解决
This problem can be solved using the following
RadioGroup rg = (RadioGroup) findViewById(R.id.radioGroup1);
rg.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(RadioGroup group, int checkedId)
{
switch(checkedId)
{
case R.id.radio0:
// TODO Something
break;
case R.id.radio1:
// TODO Something
break;
case R.id.radio2:
// TODO Something
break;
}
}
});
您可以使用自定义 ID 而不是默认 ID
You can use custom ids rather than default one
RadioGroup rg = (RadioGroup) findViewById(R.id.radioGroup1);
rg.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(RadioGroup group, int checkedId)
{
switch(checkedId)
{
case R.id.male:
// TODO Something
break;
case R.id.female:
// TODO Something
break;
case R.id.other:
// TODO Something
break;
}
}
});