2013-05-26 3 views
0

Так что я флажок в настройках, чтобы ввести различные XML <CheckBoxPreference android:title="Full Screen" android:defaultValue="false" android:key="checkbox3" я использую, если checkbox3 не установлен, то setContentView (первый XML), если он установлен setContentView (второй XML)setContentView приложения

SharedPreferences getPrefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext()); 
    boolean samples = getPrefs.getBoolean("checkbox3", true); 
    if(samples==false) 
    setContentView(R.layout.activity_main); 
    else{ 
     setContentView(R.layout.fullscreen); 
    } 

Моя проблема в том, что значение по умолчанию флажка установлено false, поэтому при первом запуске приложения он должен установитьContentView (R.layout.activity_main); но он входит в setContentView (R.layout.activity_main); даже если он «ложный» в настройках.

+0

где вы пишете значение флажка в SHaredPreference? – Blackbelt

ответ

2

Изменение boolean samples = getPrefs.getBoolean("checkbox3", true); в boolean samples = getPrefs.getBoolean("checkbox3", false);

Вы установили значение по умолчанию true вместо false

+0

Спасибо за быстрый ответ, он сработал – user1798049

+0

Затем установите свой ответ как «Принято», нажав на отметку «Марк» –

+0

. Я все еще не могу, мне нужно подождать еще 3 минуты;) – user1798049

1

Вы ошибаетесь значение по умолчанию Флажок верно в соответствии с вашим кодом:

boolean samples = getPrefs.getBoolean("checkbox3", true); 

Измените его на

boolean samples = getPrefs.getBoolean("checkbox3", false); 

И все будет хорошо

Смежные вопросы