0

uidatepicker で特定の日付を無効にする方法はありますか?

4

1 に答える 1

2

これを実装する直接的な方法がないため、datePickerから「UIControlEventValueChanged」を取得することができます。

UIDatePicker * datePick = [[UIDatePicker alloc] init];
[datePick addTarget:self action:@selector(disableDate) forControlEvents:UIControlEventValueChanged];

disableDateメソッドでは、ユーザーは現在の日付がdisableDateと等しいかどうかを確認できます。等しい場合は、currentDateを以前の日付に設定できます。

-(void)disableDate{

    NSDate *pickedDate = datePicker.date;  // Get current Date
    NSDate *disabledDate = [self getDisabledDate] // Returns Disabled Date.(getDisabledDate returns a date to be diabled).
    if([pickedDate compare:disabledDate] == NSOrderedSame){
        [datePick setDate:[self someOtherDate] animated:YES];

//現在の日付を他の日付に設定します(無効な日付が選択されている場合、someOtherDate methosは設定される日付を返します)。}

于 2012-10-09T06:14:30.467 に答える