0

所以我在设置中有复选框输入 <CheckBoxPreference android:title="Full Screen" android:defaultValue="false" android:key="checkbox3" 我使用的不同xml,如果checkbox3没有被选中,那么setContentView(1st xml)如果它被选中setContentView(second xml)

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 所以当你第一次运行应用程序时它应该 setContentView(R.layout.activity_main); 但它进入 setContentView(R.layout.activity_main); 即使它在设置中是“假的”。

4

2 回答 2

2

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

您已将默认值设置truefalse

于 2013-05-26T12:57:32.350 回答
1

根据您的代码,您误认为复选框的默认值为 true:

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

将其更改为

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

你会没事的

于 2013-05-26T13:01:02.490 回答