共享偏好不会立即改变价值?

时间:2015-06-22 14:32:00

标签: java android

我有一个GridView,每个项目都是一个打开活动的集合,但首先它使用boolean检查此项目是否已解锁,其值由{{1保存如果它已被锁定,则会将名为SharedPreference的{​​{1}}更改为项目名称并打开String,如果用户按下肯定按钮,则应更改{{1}的值错误,这意味着它不再被锁定,它应该正常打开,但问题是不会改变用户必须解锁它两次才能更改,我检查一切是否正确使用name一切都正常,除了布尔值没有改变,有人可以告诉你如何解决这个问题。

这是我的代码:

这是我的AlertDialog方法:

boolean

1 个答案:

答案 0 :(得分:2)

使用apply()不会立即保存。如果你需要立即保存它,你应该使用commit但是使用commit可以阻止ui线程。

注意:

如果您使用commit,则会收到此警告,告诉您差异

Consider using apply() instead; commit writes its data to persistent storage immediately, whereas apply will handle it in the background