0

重複の可能性:
UIDatePickerが最大日付を設定

このコードを使用して、ユーザーが設定した制限を超えないようにブロックしています。

ビューでロードしました:

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ステートメントのコードが呼び出されることはありません。なんで?

4

1 に答える 1

0

ここで議論を終えてみませんか?

まず、datePickerChangedDatePickerForDateの値が変更されたときにが呼び出されていることを確認します。

于 2013-02-05T17:33:45.687 に答える