我正在为新闻制作一个Android应用程序。 我想做一个允许某人喜欢新闻或评论的选项,之后,如果有人试图通过同一部手机进行,应用程序不应该允许。
我知道这应该由 sharedpreferences 来完成,但我不知道如何存储用户喜欢的多个新闻ID以及之后如何检查有人想要的新闻ID是否已经保存在共享偏好中。
任何帮助都会受到赞赏。
抱歉我的英语不好。
答案 0 :(得分:0)
我不确定我的语法是否正确
// Retrieve and hold the contents of the preferences file 'name'
SharedPreferences sp = getSharedPreferences(String name , int mode)
SharedPreferences.Editor spEdit = sp.edit();
// key is ID
spEdit.putInt (String key, int value)
// don't forget
spEdit.commit();
答案 1 :(得分:0)
这样做的一种方法是在SharedPreferences中存储已注释的news id
并检查它。
可以使用getSharedPreferences()
方法获取应用程序共享首选项...
SharedPreferences prefs = getApplicationContext().getSharedPreferences(
"PrefsFile", MODE_PRIVATE);
我们需要SharedPreferences.Editor
来修改sharedpreference
值...
SharedPreferences.Editor editor = prefs.edit()
Android ShredPreferences DOCS将帮助您更好地理解。
对于您的情况,如前所述,您可以使用存储news id
并每次检查它以进行验证。 (不确定这是否是最佳方式,但它是指向正确方向的开始。)
您可以像这样存储news id
...
SharedPreferences prefs = getApplicationContext().getSharedPreferences(
"PrefsFile", MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putInt("newsId", 108); // 108 is the news id and "newsId" is the variable name
editor.commit();
你可以这样读回来......
int newsId = 0;
// check if the value exists in sharedpreferences
if(prefs.contains("newsId")) {
newsId = prefs.getInt("newsId", 0);
}
// do your stuff!
希望这有帮助!