2013-02-05 132 views
0

可能重複:
UIDatePicker set Maximum dateUIPicker設置日期範圍

我使用此代碼,不過去我設置的限制阻止用戶:鑑於沒有負載

NSDate *Date=[NSDate date]; 
[DatePickerForDate setMinimumDate:Date]; 
[DatePickerForDate setMaximumDate:[Date dateByAddingTimeInterval: 63072000]]; //time interval in seconds 

和此方法:

- (IBAction)datePickerChanged:(id)sender{ 
// When `setDate:` is called, if the passed date argument exactly matches the Picker's date property's value, the Picker will do nothing. So, offset the passed date argument by one second, ensuring the Picker scrolls every time. 
NSDate* oneSecondAfterPickersDate = [DatePickerForDate.date dateByAddingTimeInterval:1] ; 
if ([DatePickerForDate.date compare:DatePickerForDate.minimumDate] == NSOrderedSame) { 
    NSLog(@"date is at or below the minimum") ; 
    DatePickerForDate.date = oneSecondAfterPickersDate ; 
} 
else if ([DatePickerForDate.date compare:DatePickerForDate.maximumDate] == NSOrderedSame ) { 
    NSLog(@"date is at or above the maximum") ; 
    DatePickerForDate.date = oneSecondAfterPickersDate ; 
} 
} 

if語句中的代碼永遠不會被調用。爲什麼?

+0

嘗試打印您在某些NSLogs中檢索的日期,看看您是否可以確定發生了什麼,爲什麼它可能無法進行比較。 –

+0

當我打印日期時,根據格式,我得到UIDatePicker上顯示的日期(yyyy ...) – user2014474

+0

並且最小和最大日期是市場。日期超出範圍灰色 – user2014474

回答