如果在设置中,在标记特定项的RadioButtons列表中,我如何显示另一个活动而不是主活动?例如:如果选择A,则显示活动A。如果选择B,则显示活动B。如果选择C -活动C显示
首先,获取当前从单选组中选中的按钮。获得当前的单选按钮后,只需检查按钮的文本或标签,并基于它启动活动。
试试这样,
radioGroup = (RadioGroup) findViewById(R.id.radioGroup);
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// checkedId is the RadioButton selected
// get selected radio button from radioGroup
int selectedId = radioGroup.getCheckedRadioButtonId();
// find the radio button by returned id
radioButton = (RadioButton) findViewById(selectedId);
// toggle views on radio button click
if (radioButton.getText().toString().equals("Activity A") {
startActivity(new Intent(CurrentActivity.this, ActivityA.class))
}
else if (radioButton.getText().toString().equals("Activity B")) {
startActivity(new Intent(CurrentActivity.this, ActivityB.class))
}
else if (radioButton.getText().toString().equals("Activity C")){
startActivity(new Intent(CurrentActivity.this, ActivityC.class))
}
}
});
您可以使用sharedPreferences。如果选择了第一个单选按钮,则将A存储在sharedPreferences中,如果选择了第二个,则将B存储在sharedPreferences中,以此类推。当创建一个intent时,你可以检查CallingActivity SharedPreference中存储了什么,如果它是默认值,则调用main,否则使用switch case调用特定的activity。
SharedPreferences sharedPref = getSharedPreferences("CallingActivity", Context.MODE_PRIVATE);
SharedPreferences.Editor sEditor = sharedPref.edit();
sEditor.putString("ActivityName","A");
sEditor.commit();