如何在UIDatePicker中禁用24小时格式

时间:2015-10-16 09:39:07

标签: ios iphone

我想在UIDatePicker中禁用24时格式,我的要求是只显示AM / PM格式的日期选择器。如果用户在手机设置中启用24小时制。我的日期选择器显示24小时格式,我想强制它显示12小时格式。请建议我。

谢谢,

5 个答案:

答案 0 :(得分:7)

日期格式取决于您的设备区域设置。

虽然在大多数情况下不建议使用,但您可以覆盖区域设置:

例如,这为您提供24小时格式:

self.datePicker.locale = [NSLocale localeWithLocaleIdentifier:@"en_GB"];

这个带有PM / AM的12h格式

self.datePicker.locale = [NSLocale localeWithLocaleIdentifier:@"en_US"];

答案 1 :(得分:2)

我们可以自定义当前日期将是24小时格式,如果用户设置意味着按照iOS设备设置..否则我们可以像这样设置

NSDate *currDate = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];

NSString *dateString = [dateFormatter stringFromDate:currDate];

_todayDateLbl.text=dateString;
#pragma get current time

dateFormatter.dateFormat = @"hh:mm a";
[dateFormatter setTimeZone:[NSTimeZone systemTimeZone]];
NSLog(@"The Current Time is %@",[dateFormatter stringFromDate:currDate]);

答案 2 :(得分:1)

您无法设置12/24格式。

这取决于用户在iOS设备上的设置。

答案 3 :(得分:1)

取决于区域设置,但您可以构建自己的日期选择器。

答案 4 :(得分:1)

24小时格式试试......

 NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"NL"];
 [self.datePicker setLocale:locale];