2015-10-16 63 views
0

我想在UIDatePicker中禁用24-時鐘格式,我的要求是隻顯示AM/PM格式的日期選擇器。如果用戶在手機設置中啓用24小時制時間。我的日期選取器顯示24小時格式,我想迫使它顯示12小時格式。請建議我。如何在UIDatePicker中禁用24小時格式

謝謝,

回答

5

日期格式取決於您的設備區域設置。

雖然它不是在大多數情況下,建議,您可以覆蓋區域設置:

例如這給你24小時格式:

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

與PM這12小時格式/ AM

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

+0

@nikey您可以設置24小時制的[NSLocale localeWithLocaleIdentifier:@「en_GB」]或使用AM/PM選項設置12小時格式的[NSLocale localeWithLocaleIdentifier:@「en_US」]。 如果您可以使用定時器模式設置日期選擇器,那麼使用AM/PM的12小時格式是默認格式。 謝謝 –

1

你只是不能設置12/24格式。

這取決於用戶在iOS設備上的設置。

+0

你的意思是,我們不能自定義日期選擇器。 – nikey

+0

不,我們不能。 UIDatePicker與系統配置有關。蘋果必須這樣做才能確保用戶的體驗 – ronan

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]); 
1

取決於語言環境,但您可以構建自己的日期選擇器。

1

24小時格式嘗試...

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

他想禁用它,不啓用它。 – Jasper

相關問題