2010-12-14 3 views

답변

14

NSDateFormatter를 사용하여 날짜 형식에 UILabel의 텍스트를 변환 한 다음 예에서 "날짜"를 대체 그 값을 넣어 :

UIDatepicker *datePicker; 

NSDate *Date=[NSDate date]; 

datePicker.minimumDate=Date; 
+0

@Nishant는,이 작품, 따라서 레이블에 날짜가 있으면 dateFormatter를 사용하여 해당 날짜를 date 객체로 변환 한 다음 minimumDate를 사용하십시오. – Ishu

3

당신은 NSDateFormatter를 사용하여 설정 setDateFormat 방법을 사용할 수 있습니다 날짜 형식.

[formatter setDateFormat:@"MMM dd,yyyy"]; 

NSDate *date = [formatter dateFromString:lblDate.text]; 

datePicker.minimumDate=date; 
+0

나는 그것을했다. 그러나 그것이 작동하지 않고있다 "내가 2010 년 12 월 14 일"과 같은 날짜를 가지고있다. 그리고 나는 그것을 'nil'값을 얻은 날짜로 변환 할 때 ....... !! – iphonedev23

+0

use [formatter setDateFormat : @ "MMM dd, yyyy"]; 날짜가 맞으면 형식을 설정해야합니다. 올바른 위치에 쉼표와 공백을 사용하십시오. –

0
NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease]; 
     NSDate *currentDate = [NSDate date]; 
     NSDateComponents *comps = [[[NSDateComponents alloc] init] autorelease]; 
     [comps setYear:0]; 
     NSDate *maxDate = [calendar dateByAddingComponents:comps toDate:currentDate options:0]; 
     [comps setYear:-5]; 
     NSDate *minDate = [calendar dateByAddingComponents:comps toDate:currentDate options:0]; 

     [datePicker setMaximumDate:maxDate]; 
     [datePicker setMinimumDate:minDate]; 

는 오년 날짜를 보여주는 .......

0

한 달에 현재 날짜에서 최소 시간을 참조하십시오

NSDate* currentTime = [NSDate date]; 

[datePicker setMinimumDate:[currentTime dateByAddingTimeInterval:43200]];//min time +12:00 for the current date 

[datePicker setMaximumDate:[currentTime dateByAddingTimeInterval:2592000]]; // max day (+ 30) 
관련 문제