У меня есть RadioGroup с 2 RadioButtons.
Если я нажимаю rb_yes прерывания INT url_ask устанавливается на 0.
Если я нажимаю rb_no прерывания INT url_ask устанавливается равным 1.Последнее обновление RadioButton завершено перезагрузкой приложения
Я хочу, чтобы последний проверил RadioButton также проверяется после App был перезапущен.
Я попытался это, но каждый раз, когда я запустить приложение это происходит сбой:
//OnCreate
SharedPreferences settings = getSharedPreferences("SETTINGS", Context.MODE_PRIVATE);
super.onCreate(savedInstanceState);
color = settings.getInt("COLOR", 1);
url_ask = settings.getInt("URL_ASK", 0);
if(color == 1) {
setContentView(R.layout.layout_main);
}
if(color == 2) {
setContentView(R.layout.layout_main_red);
}
if(color == 3) {
setContentView(R.layout.layout_main_green);
}
if(color == 4) {
setContentView(R.layout.layout_main_yellow);
}
if(color == 5) {
setContentView(R.layout.layout_main_pink);
}
final RadioButton rb_no = (RadioButton)findViewById(R.id.radioButton_links_no);
final RadioButton rb_yes = (RadioButton)findViewById(R.id.radioButton_links_yes);
if(url_ask == 0) {
rb_yes.setSelected(true);
rb_no.setSelected(false);
}
if(url_ask == 1) {
rb_no.setSelected(true);
rb_yes.setSelected(false);
}
//OnClick for the RadioButtons
public void url_ask_no (View v) {
SharedPreferences settings = getSharedPreferences("SETTINGS", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putInt("URL_ASK", 1);
editor.commit();
url_ask = 1;
}
public void url_ask_yes (View v) {
SharedPreferences settings = getSharedPreferences("SETTINGS", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putInt("URL_ASK", 0);
editor.commit();
url_ask = 0;
}
EDIT:
Я знаю, что я сделал не так в настоящее время. Я хотел использовать findViewByID на другом макете, а не на моем layout_main. Это была проблема.
Я не вижу, что вы вызываете setContentView() в свой 'onCreate', поэтому ваш' RadioButton', вероятно, 'null' – 0xDEADC0DE