我将radiobuttons添加到我的radiogroup,我想为按钮添加一个属性,所以当点击其中一个添加的按钮时,会调用一个方法。我怎么做,我尝试搜索,但我没有找到我的答案。我有一个for循环来添加radiobuttons
enter code here
RadioGroup group = (RadioGroup) findViewById(R.id.RadioGroup);
RadioButton button;
String accounts= msg.getData().getString("text");
String[] SepAccounts= accounts.split(":");
for (int i=0; i<SepAccounts.length;i++)
SepAccounts[i]= SepAccounts[i].replaceAll("-"," ");
Context context= group.getContext();
for (int i=0; i < SepAccounts.length; i++){
button = new RadioButton(context);
button.setText(SepAccounts[i]);
group.addView(button);
}
这是我添加单选按钮的代码的一部分
这就是我创建广播组的地方
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_below="@id/NFCHeaderTextView"
android:layout_width="fill_parent"
android:background="@drawable/back"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/RadioGroup"
android:onClick="onRadioButtonClicked">
</RadioGroup>
答案 0 :(得分:1)
你试过这个吗?
radioButton.setOnClickListener(listener);
您的侦听器需要实现OnClickListener。
答案 1 :(得分:1)
在将每个按钮添加到组中之前,为每个按钮添加一个OnClickListener ...
RadioGroup group = (RadioGroup) findViewById(R.id.RadioGroup);
RadioButton button;
String accounts = msg.getData().getString("text");
String[] SepAccounts = accounts.split(":");
for (int i = 0; i < SepAccounts.length; i++)
SepAccounts[i] = SepAccounts[i].replaceAll("-", " ");
Context context = group.getContext();
for (int i = 0; i < SepAccounts.length; i++) {
button = new RadioButton(context);
button.setText(SepAccounts[i]);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
doStuff(v);
}
});
group.addView(button);
}
...
private void doStuff(View v)
{
// radio button "v" was clicked
}
有关OnClickListener http://developer.android.com/reference/android/view/View.OnClickListener.html
的详细信息,请查看文档