2

我的应用程序绘制了一个日历。我有一个 ivar,_cal,设置为,-[NSCalendar autoupdatingCurrentCalendar]因为如果用户在系统偏好设置中进行更改,我想重绘日历。例如,他们可以将一周的第一天从星期日更改为其他日期。

目前,我正在使用每秒触发一次的 NSTimer。我根据缓存副本检查 [_cal firstWeekday] 以查看它是否已更改。如果是这样,我重画。

我想知道如果影响日历的系统偏好设置已更改,是否有办法通知我。然后,我可以摆脱我的 NSTimer。

4

1 回答 1

1

看起来您可以观察 NSCurrentLocaleDidChangeNotification。

请参阅https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSLocale_Class/Reference/Reference.html#//apple_ref/doc/uid/TP30001224-DontLinkElementID_1

于 2012-07-02T04:42:04.583 回答