我發現某些值已被存儲到Set
重新啓動應用程序後丟失了。爲什麼?這是一個Android API錯誤?有人建議將字符串存儲在數據庫中。我還沒有測試過,但我認爲這個建議是解決問題的方法。那麼getStringSet
和putStringSet
?使用getStringSet和putStringSet丟失一些值
3
A
回答
5
從我的理解,這是一個錯誤。問題在於,當你嘗試存儲一個集合時,Android會將你正在嘗試保存的已修改集合與存儲在SharedPreferences中的當前集合進行比較。當它們是同一個對象(具有相同的參考)時,新的被忽略。
解決方法是在存儲之前創建集合的新副本。
Here是細節和問題提交https://code.google.com/p/android/issues/detail?id=27801。
0
我有使用SharedPreferences相同的問題。 Android API似乎存在一個錯誤。我做了就可以了小哨here
對我來說,最簡單的方法是將其刪除,提交它,然後把它和再犯它
3
SharedPreferences.Editor編輯= preferences.edit();
editor.remove(key);
editor.commit();
editor.putStringSet(key,value);
editor.commit();
+0
嘗試解釋這個答案多一點。代碼很好,但解釋對所有未來的觀衆更好。 – SuperPrograman 2013-10-16 02:27:41
相關問題
- 1. 下拉菜單丟失了一些值
- 2. Celery/Redis一些(很多)消息丟失
- 3. DataGridView中丟失的一些對象
- 4. IIS SMTP一些郵件丟失了
- 5. Youtube搜索API - 一些文件丟失
- 6. DataOutputStream,是否會丟失一些位
- 7. preg_match在使用cURL獲取數據時丟失了一些ID
- 8. jsch ChannelExec使用nohup運行.sh腳本「丟失」一些命令
- 9. 使用Python嗅探模塊丟失了一些數據包
- 10. Ajax.ActionLink值丟失
- 11. 導入丟失一些浮點類型值的csv數據表
- 12. SharedPreferences getStringSet方法不可用
- 13. WCF在使用靜態時丟失值
- 14. serializer.data丟失某些數據
- 15. libGDX - GDX-後端-jglfw丟失和其他一些
- 16. 某些順序SignalR調用丟失
- 17. 捆綁丟失值
- 18. PHP mysql_real_escape_string丟失值
- 19. 指針值丟失
- 20. 使用servlet和Jetty時丟失圖像
- 21. 用.net和jQuery丟失
- 22. ASP.NET/UserControl,ViewState和丟失屬性值
- 23. 的Weblogic應用抱怨一些類丟失,如何調試?
- 24. php在使用ajax後引用後丟失了一些字符串的路徑
- 25. 使用IServerEvents.NotifyChannel丟失事件
- 26. 使用GMP精確丟失
- 27. 權限丟失使用SetSystemTime
- 28. 使用Mailkit丟失附件
- 29. MailMessage.Body使用Encoding丟失CrLf.UTF8
- 30. 使用Uploadify時,爲什麼某些POST數據會丟失?
謝謝。但是我用一個包含「NOT NULL UNIQUE TEXT」字符串的表格來表示一個數據庫。 – 2013-03-28 16:30:32