0

我使用以下方法实现了一个共享首选项的实例:

起点:

SharedPreferences prefs=getPreferences(Context.MODE_PRIVATE);
        SharedPreferences.Editor editor=prefs.edit();
        editor.putBoolean("name",true);
        editor.putBoolean("cap",true);
        editor.putBoolean("code",true);
        editor.putBoolean("time",true);
        editor.putBoolean("ssid",true);
        editor.commit();

端点:

SharedPreferences prefs = getSharedPreferences(NDEF_PREF, Context.MODE_PRIVATE); 
            boolean name = prefs.getBoolean("name", true); 
            boolean cap= prefs.getBoolean("cap", true);
            boolean code = prefs.getBoolean("code", true);
            boolean time = prefs.getBoolean("time", true);
            boolean ssid = prefs.getBoolean("ssid", true);

测试方法:

Boolean isTrue;
                isTrue = null; // valid
                isTrue = true; // valid
                isTrue = false; // valid
                if (isTrue == null) {
                    Log.d(TAG, "Working Boolean!!!");

Boolean isTrue;
            isTrue = null; // valid
            isTrue = true; // valid
            isTrue = false; // valid
            if (isTrue != null) {
                Log.d(TAG, "NON Working Boolean!!!");

结果:

使用任何一种方法在 LogCat 中都不会出现任何内容

问题:

我是否正确实施了一切?如果是这样 - 为什么我不能检查我的新共享首选项?

4

1 回答 1

0

我尝试了下面的代码并猜测它在 logcat "val if null" 中的显示

public void onCreate(Bundle savedInstanceState) 
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

SharedPreferences pref = getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = pref.edit();
editor.putBoolean("name", true);

SharedPreferences prefs = getSharedPreferences("prefs",0);
// Boolean val=prefs.getBoolean("name1", true);
Boolean  val=null;
//Log.e("vaaa00", ""+val.toString());
if(val!= null)
   Log.e("val if ", ""+val);
else
   Log.e("val else", ""+val);        
}
于 2013-04-18T13:50:40.680 回答