使用共享首选项更新列表视图

时间:2013-10-16 09:31:08

标签: android

我在Android应用程序中有测验,其中包含用户点击其中一个问题并回答问题的列表,然后点击下一个按钮进入下一个问题,或者现在根据给出正确/错误的答案返回列出问题列表问题编号突出显示为绿色或红色,灰色是其默认颜色。所有这些都按照我的选择正常工作,但我希望在不同的活动以及用户退出应用程序时保持突出显示的状态。

请大家帮助我,因为我已经在正式的截止日期前因此而失败了?

2 个答案:

答案 0 :(得分:1)

我假设您有一个课程,我们可以将其称为Question,您将设置boolean correctAnswer,并设置为true/false。现在让您的课程Question实施Serializable,这样您就可以将这些Questions保存在FileSystem中,或者您可以将它们存储在SQLiteDatabase中,而不需要实施Serializable(您的选择)。

现在,即使重新启动应用程序,您的应用程序中的数据也是一致的,因此您可以加载问题列表,只需检查boolean correctAnswer,以便为每个Question设置正确的颜色。你的ListView

编辑:我只是为你的答案提供了三种状态。 因此,您可以将boolean correctAnswer添加到

,而不是int answered

未回答= 0

回答错误= 1

回答正确= 2

答案 1 :(得分:0)

使用SharedPreferences,

保存:

SharedPreferences settings;
SharedPreferences.Editor editor;
public static final String PREFS_NAME = "app_pref";
public static final String KEY_p_id = "KEY_test";

settings = getSharedPreferences(PREFS_NAME, 0);
editor = settings.edit();
editor.putString(Login_screen.KEY_test, values.get(0));
editor.commit();

删除:

editor.remove("KEY_test").commit();

根据您的要求在您的应用中使用它。