我有一個應用程序,我已經制作了一個鬧鐘。在我的應用程序問題是,當設備的日期和時間設置改變,然後警報標籤的文本也發生了變化。例如,如果時間設置設置爲24小時,則在標籤的文本中,不會在上次顯示上午和下午,而將設置更改爲12小時時,則會在標籤的文本中顯示上午和下午。如何檢測什麼是日期和時間的設置,以及如何在標籤的文本上應用驗證,無論設置始終在am和pm模式下顯示還是在12小時設置中顯示?如何檢測設備的時間設置?
感謝在進步......
我有一個應用程序,我已經制作了一個鬧鐘。在我的應用程序問題是,當設備的日期和時間設置改變,然後警報標籤的文本也發生了變化。例如,如果時間設置設置爲24小時,則在標籤的文本中,不會在上次顯示上午和下午,而將設置更改爲12小時時,則會在標籤的文本中顯示上午和下午。如何檢測什麼是日期和時間的設置,以及如何在標籤的文本上應用驗證,無論設置始終在am和pm模式下顯示還是在12小時設置中顯示?如何檢測設備的時間設置?
感謝在進步......
Use can use this code:
NSDate *today = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
// display in 12HR/24HR (i.e. 11:25PM or 23:25) format according to User Settings
[dateFormatter setDateFormat:@"HH:mm"];
NSString *currentTime = [dateFormatter stringFromDate:today];
NSLog(@"%@",currentTime);
[dateFormatter release];
Hear currentTime contains always 24 hour time format.
int hour = [[[currentTime componentsSeparatedByString:@":"] objectAtIndex:0] intValue];
if(hour > 12){
//show PM
}else{
//Show AM
}
只是把這個代碼
[dateFormatter setDateFormat:@"hh:mm a"];
這
[dateFormatter setDateFormat:@"HH:mm"];
然後
NSString *currentTime = [dateFormatter stringFromDate:today];
NSLog(@"%@",currentTime);
代替
NSLog將分別用AM或PM打印當前時間12小時格式