【发布时间】:2017-01-09 09:28:17
【问题描述】:
您好,我试图让 3 个单选按钮更改一个按钮的 onclick 侦听器,每个单选按钮为该按钮设置自己的点击侦听器。 但我明白了 (MainActivity 不是封闭类)
注意:单选按钮在设置活动中,按钮在主活动中。
设置
public class Settings extends MainActivity {
private RadioGroup radioGroup;
private RadioButton radioButtonpc;
private RadioButton radioButtonps;
private RadioButton radioButtonxb;
public Button settings;
public Button cheatsactivity;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.settings);
cheatsactivity = (Button) findViewById(R.id.cheats_activity);
settings = (Button) findViewById(R.id.setting_btn);
radioGroup = (RadioGroup) findViewById(R.id.RadioGroup);
radioButtonpc = (RadioButton) findViewById(R.id.radioButton1);
radioButtonxb = (RadioButton) findViewById(R.id.radioButton2);
radioButtonps = (RadioButton) findViewById(R.id.radioButton3);
radioButtonpc.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
cheatsactivity.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, PC.class);
startActivity(intent);
}
});
}
});
radioButtonxb.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
cheatsactivity.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, XBOX.class);
startActivity(intent);
}
});
}
});
radioButtonps.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
cheatsactivity.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, PS.class);
startActivity(intent);
}
});
}
});
}
}
更新
它现在给了我
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference whenever i clicked on the radio button
我正在尝试更改以使用户从设置活动中更改主活动中按钮的 onclick 侦听器任何解决方案?
【问题讨论】:
-
所有这些单选按钮都在
R.layout.settingsxml 中声明?如果可能,请分享xml代码。 -
是的,我确实在广播组中声明了它们
-
将 MainActivity.this 更改为 Settings.this In all Intent
标签: java android radio-button onclicklistener