android - 需要检查 Shared Preferences String 或 Boolean 是否存在

标签 android sharedpreferences

我想知道是否有人可以帮助我,我正在努力了解共享偏好,我假设它们存储在设备(平板电脑)中并且可以检查它们是否存在。 我下面的代码(第一个)我想要一个按钮,一旦单击它就可以在共享首选项中放置一个字符串或 bool 值。 第二个代码是查看共享首选项是否存在,如果它确实进行了 settext 更改,如果不忽略并查找下一个字符串

cala1.setOnClickListener(new View.OnClickListener() { 
public void onClick(View v) { 
     LoadPreferences();
         SharedPreferences sharedpreferences = getSharedPreferences("prefman",   MODE_PRIVATE);        
          SharedPreferences.Editor editor = sharedpreferences.edit();
          editor.putString("cal1","c1");
          editor.commit();                });


enter4.setOnClickListener(new View.OnClickListener() { 
             public void onClick(View v) { 
 LoadPreferences();
              SharedPreferences sharedpreferences = getSharedPreferences("prefman", MODE_PRIVATE);        
            sharedpreferences.contains("cal1"); 

                 if (sharedpreferences.getString("cal1","c1").equals("cal1"));

                 {
                     {cexist1.setText("Shared prefs exit"); 

                 }
else

最佳答案

我不明白为什么在忽略返回值时调用 sharedpreferences.contains("cal1")SharedPreferences 的 Android 文档说如下:

contains(String key) Checks whether the preferences contains a preference.

看起来这就是你想要的,尝试在你的 if 子句中使用调用。

if (sharedpreferences.contains("cal1")) {
   cexist1.setText("Shared prefs exit"); 
}

你上面代码的格式也有点乱 - 更难阅读;)

关于android - 需要检查 Shared Preferences String 或 Boolean 是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7299471/

相关文章:

android - 如何播放 DCIM 文件夹中的 mp4 文件?

android - 使用 Retrofit 发布原始数据

android - 从 Firebase 读取多个值并放置在折线图中

android - 试图比较分数

java - 使用 SharedPreferences 在 Android 中实现 Collection 夹列表

java - Android 共享首选项防止在存储对象时覆盖

sql - 在数据库查询中最后排序空数据

java - 如何在下载图像之前确定图像大小和尺寸

java - 未保存登录时的共享首选项

android - SharedPreferences 没有按我的预期工作