我想了解一下如何在应用程序中通知时区更改。
- 场景1:当用户从iPhone设置中手动更改时区时。我想在这种情况下,下面的帖子将锻炼
当iPad日期时间设置更改时通知应用程序
- 场景2:如果应用程序在前台,并且用户正在前往与手机设置中设置的时区不同的时区。在这种情况下,有什么方法可以通知应用程序时区的更改吗?这意味着,当位置更改到不同的时区时,是否可以通知应用程序时区的更改
我看到了另一种可以通知时区更改的方式,如下所示。
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(timeZoneChanged) name: NSSystemTimeZoneDidChangeNotification object:nil];
有人能根据场景2给出通知时区更改的最佳方式吗。
您可以通过让它们调用相同的方法来处理这两个通知。你需要知道的是,你显示的任何时间都可能需要改变;在极少数情况下,您会显示用户的时区,这也需要更改。这两种通知都很少见,所以重新显示所有内容是最简单的。
您也可以考虑查看nextDaylightSavingTimeTransition;如果有什么需要改变的话。例如,如果我将闹钟设置为上午8点,并且您注意到夏令时从现在到闹钟之间发生了变化,您可以询问是否希望在明天上午8点或今天上午8点后24小时发出闹钟。