-4

日付ピッカーによって入力された日付が、変数として格納されている特定の日より前であるかどうかを確認するにはどうすればよいですか。年は関係ありません。

たとえば、日付ピッカーで選択された日付を確認して、1 月 5 日より前か 1 月 5 日より後かを知らせる必要があります。true の場合、結果は IF 関数をトリガーする必要があります。

NSDate * dateOne = [NSDate date];
NSDate *dt1 = NSDate date];

if([dateOne compare:dateTwo] == NSOrderedAscending) {
    NSLog(@"TRUE");
}
4

2 に答える 2

4

あなたがしたいことは、現在の日付を NSDateComponents に分割することです

NSCalendar *currentCalendar = [NSCalendar currentCalendar];
NSDateComponents *components = [currentCalendar components:NSDayCalendarUnit | NSMonthCalendarUnit fromDate:[NSDate date]];

if (components.month < 2 || (components.month == 2 && components.day < 5) ){
    // Before the 5th of february.
}
于 2013-03-29T09:26:41.237 に答える
-1

以下のように、選択した日付の日付と月だけを取得できます。

NSInteger sDay = [[[yourDatePicker date] stringFromDateWithFormat:@"dd"] integerValue];
NSInteger sMonth = [[[yourDatePicker date] stringFromDateWithFormat:@"MM"] integerValue];
if ( sMonth < 2 || (sMonth  == 2 && sDay < 5) ) {
        NSLog(@"yes its further");
}

以下は、任意の日付形式で任意の日付を変換するために使用できる方法です。

-(NSString*)stringFromDateWithFormat:(NSString*)strDateFormat{
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
     //[formatter setTimeZone:[NSTimeZone systemTimeZone]];
    [formatter setDateFormat:strDateFormat];
    NSString *str = [formatter stringFromDate:self];
    [formatter release];
    return str;
}
于 2013-03-29T09:22:43.070 に答える