首页 > 解决方案 > 拉日期和我们作为变量 Xcode

问题描述

我正在尝试根据日期在我的应用程序上显示某些弹出窗口。例如一个弹出窗口,上面写着复活节快乐!我已经创建了视图。我只需要知道如何提取日期并将其转换为变量,以便当日期与假期或其他事件(如用户生日)的日期匹配时,弹出窗口将显示,然后在双击或 10 秒后关闭.

标签: swiftxcodedate

解决方案


您需要决定何时查看日期以查看是假期还是其他特殊日期。

一种选择是订阅UIApplicationDidBecomeActive通知。另一个是UIApplicationDelegate applicationDidBecomeActive(_:). 如果您在应用程序委托中实现该功能,它将在应用程序激活时被调用。然后您可以编写检查日期的代码,如果它是一个特殊日期,并且您之前没有显示该日期的消息,则在关键窗口上显示一个弹出窗口。

//Add a var to your app delegate
var currentDate: Date?

Add a function something like this to your app delegate
func applicationDidBecomeActive(_ application: UIApplication) {
   let newDate = Date()
   defer {
     currentDate = newDate
   }
   let calendar = Calendar.current
   guard let oldDate = currentDate else { return }
   if !calendar.isDate(oldDate, inSameDayAs: newDate) {
     //Display your popup
   }
}

推荐阅读