Android 今天只有一次祝酒词

Android 今天只有一次祝酒词,android,sharedpreferences,toast,Android,Sharedpreferences,Toast,我正在实现的概念是,如果今天有日期,则只显示一条警报消息一次 示例5-8-14仅显示一次toast消息 6-8-14仅显示一次祝酒词 ' 在每次约会中,只有一次祝酒会 编辑: 只有在第一次启动应用程序后,才会出现带有当前日期的祝酒词。如果我第二次或第三次启动我的应用程序,那么应该不会出现吐司逻辑: 什么: 1.当您展示祝酒词时,请将日期/日期保存在SharedReferences中。 2.然后,每次将今天的日期值与sharedPref值进行比较,如果不同,则显示祝酒词 如何: -为toast创建

我正在实现的概念是,如果今天有日期,则只显示一条警报消息一次

示例5-8-14仅显示一次toast消息

6-8-14仅显示一次祝酒词 ' 在每次约会中,只有一次祝酒会

编辑: 只有在第一次启动应用程序后,才会出现带有当前日期的祝酒词。如果我第二次或第三次启动我的应用程序,那么应该不会出现吐司逻辑:

什么: 1.当您展示祝酒词时,请将日期/日期保存在SharedReferences中。 2.然后,每次将今天的日期值与sharedPref值进行比较,如果不同,则显示祝酒词

如何: -为toast创建一个函数,其中更新共享的Pref值。 -在一个if循环中,比较默认的共享pref值-因此当你第一次运行应用程序时,它将返回默认值并进入show toast函数

例如

在showToast中,将今天日期的值保存在共享首选项中

保存的值可以是整数或字符串。可以改变。等于!=of=相应地

可能需要:


查看共享参考资料。 这里是android开发者的链接:

第一次启动后设置bool值,每次启动后检查此值,如果为真,则不显示toast

获取日期:

Calendar c = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("dd:MMMM:yyyy");
String strDate = sdf.format(c.getTime());
链接:

写:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putBool("Toast", True);
editor.putString("Date", strDate);
editor.commit();
阅读:


模糊的问题。请更清楚一些,并发布一些代码。显示您的逻辑,您尝试了什么?每日一次Toast消息显示。我打开我的应用程序多次,但今天第一次只约会一次Toast Show。明天我打开应用程序第一次Toast Show,bool值何时为假?要求是需要检查日期,而不是布尔值:
SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putBool("Toast", True);
editor.putString("Date", strDate);
editor.commit();
SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
bool bToast = sharedPref.getBool("Toast", False);
String strDate = sharedPref.getString("Date", null);