I am working on a small application where the primary function is to display
the time to the user. My hope was to honor the user's preference setting. I
am either missing something or honoring the user's preference is harder than
expected.
So, there are two places to set 24 hr time display.
1. Date & Time preference panel
2. Language & Region preference panel
The cocoa frameworks react differently depending on where you set this.
If set by method 1, cocoa frameworks seem unaware of this setting and it
appears this is cosmetic in that it only affects the display of the clock in
the NSStatusBar.
If set by method 2, cocoa frameworks reflect this and the Date & Time setting
is disabled noting that the setting has been overridden.
So if a user uses method 1, potentially unaware of method 2, how should one go
about determining the user's intentions.
There are deprecated methods using: (didn't try, it's deprecated)
NSUserDefaults with the key NSShortTimeDateFormatString
There are supported methods using: (works with method 2)
NSString *format = [NSDateFormatter dateFormatFromTemplate:@"j" options:0
locale:[NSLocale currentLocale]];
BOOL is24Hour = ([format rangeOfString:@"a"].location == NSNotFound);
Can anyone provide any clarity here?
Sandor
_______________________________________________
Cocoa-dev mailing list ([email protected])
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to [email protected]