我想知道是否有人可以帮助我,我正在努力了解共享偏好,我假设它们存储在设备(平板电脑)中并且可以检查它们是否存在。 我下面的代码(第一个)我想要一个按钮,一旦单击它就可以在共享首选项中放置一个字符串或 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/