【发布时间】:2014-05-05 10:31:44
【问题描述】:
我的应用程序包含一个日期列表,其中有切换按钮
1.>on check it sets alarm and on uncheck it deletes the alarm
这些工作正常,但是当我关闭应用程序时,警报将自动被删除 所以我想在单击切换按钮时将数据保存在共享首选项中,并在我正在做的共享首选项中取消 btn 时删除特定数据
SharedPreferences sharedPref = context.getSharedPreferences("com.example.dd.mydata", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putString("alarm"+cday+"_"+month,cday);
editor.commit();
其中 cday 和 month 是闹钟日期和月份
收到后我必须获取这些数据并与日期匹配,以便警报响起
所以我正在这样做
SharedPreferences sharedPref = arg0.getSharedPreferences("com.example.dd.mydata", Context.MODE_PRIVATE);
String name = sharedPref.getString("alarm"+cday+"_"+cmonth, null);
通过这种方式,我在两个类中都实现了共享首选项的价值,但它适用于单击超过 2 个按钮的单个切换按钮 **覆盖还告诉我如何检查当前日期是否存在于共享中偏好
【问题讨论】:
-
我猜你必须设置不同的按键,每次用户点击设置闹钟
-
要么使用不同的密钥,要么使用数据库进行记录
-
我的 cday 包含列表中的值(这是警报日期)所以对于每一行它都是不同的,我这样做是为了设置键 editor.putString("alarm"+cday+"_"+月,cday);每次设置新密钥都是错误的,然后告诉我正确的步骤是什么
-
只需将#index 附加到您的密钥末尾,现在只需运行forloop 并检索您的密钥。
-
这是完美的工作我的共享首选项包含数据,但如何将其与当前日期匹配