objective-c - 将 UIDatePicker 从 12 小时制更改为 24 小时制并返回

标签 objective-c iphone cocoa-touch uidatepicker

很抱歉让我的第一个问题有点简单——我花了一天时间阅读了 NSLocale 和 NSCalendar 类的描述,但我看不出这是否可行。

我在 UIDatePickerModeDateAndTime 模式下有一个 UIDatePicker。它当前根据用户的语言环境显示日期和时间,这是默认行为。

我希望能够提供以 12 小时或 24 小时时间格式显示 UIDatePicker 的选项。检测用户当前使用的时间格式不是问题,但我不清楚如何在不完全丢弃用户的区域设置的情况下仅更改 UIDatePicker 的时间格式(因为选择器还显示周和月)。 UIDatePicker 支持设置其语言环境和设置其日历。

所以,第一个问题是这是否是我应该尝试通过 NSLocale 或 NSCalendar 来做的事情,第二个问题是是否有人可以推荐一种方法来隔离时间格式而不会丢弃用户的其他区域设置。

感谢您的任何建议。

最佳答案

这不是您正在寻找的答案,但在 Cocoa 中,您可以创建一个 NSDateFormatter 并使用 setFormatter 将其附加到 NSDatePicker(它是一个 NSControl)。不幸的是,等效的 iPhone 类 (UIControl) 尚不支持此功能。我向 Apple 提出了一个关于它的错误,这是一个已知问题,尽管他们不会告诉我他们是否/何时计划修复/增强它。

关于objective-c - 将 UIDatePicker 从 12 小时制更改为 24 小时制并返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/969308/

相关文章:

cocoa - 使用 NSURLConnection 强制 HTTP v1.0 请求

objective-c - 最大值和最小值的算法? ( Objective-C )

objective-c - 我们应该什么时候使用 NSString 和 NSMutableString?

iphone - 保留的 self 在 block 语句内不起作用

iPhone 应用程序加载器故障排除

ios - 当按下 2 倍快时,performSegueWithIdentifier 会推送两个 ViewController

ios - Xcode 4.5 - 无法通过 iTunes 安装开发人员 .ipa 文件

iphone - 向 iPhone 应用程序添加图形

iphone - 用 UIToolbar 替换 UINavigation?

objective-c - 样式 UIButtons - 子类?