【发布时间】:2016-07-25 05:10:08
【问题描述】:
我尝试通过使用将数据附加到共享首选项文件中
SharedPreferences sharedPreferences = getSharedPreferences("myData", MODE_APPEND);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("name", userName.getText().toString());
editor.putString("password", password.getText().toString());
editor.commit();
但我发现新值会覆盖旧值。你能帮我解决这个问题吗?
【问题讨论】:
-
覆盖旧值是什么意思?您的意思是
name和password以外的值消失了? -
SharedPreferences中的数据以键值对的形式存储和检索。因此,当您putString键入“名称”或“密码”时,您会覆盖先前保存的值。你可以在这里阅读它developer.android.com/training/basics/data-storage/… -
当我尝试追加到现有的共享首选项 xml 文件时,值名称和密码被新值覆盖。
-
所以你想要一个名称-密码对列表?
-
如果你想保存用户名和密码列表,最好使用 sqlite(Database)