2012-07-20 3 views
-1

nsdate에 nstimeInterval 값을 지정하려고합니다.코코아 : nsdate에 nstimeInterval 값을 할당 하시겠습니까?

NSDate *startTime=[NSDate date] ; 
    NSDate *endTime=[NSDate date] ; 
    NSTimeInterval difference=[endTime 
    timeIntervalSinceDate:startTime]; 

    startTime=difference; This gives me an error. 

어떻게 nsTimeInterval 유형의 차이 결과를 nsdate에 할당 할 수 있습니까?

덕분에 사전

답변

0

에 당신은 NSTimeInterval이 두 날짜 사이의 차이 것을 이해할 필요가있다. 프로그램에 다음과 같이 말하면됩니다.

날짜를 2 일로 설정하십시오.

싶은 것은에 프로그램 말씀입니다 : 지난 월요일 플러스 2 일 날짜를 설정

합니다.

따라서 당신은 NSDate 방법이 가족 중 하나를 사용해야합니다

+ dateWithTimeIntervalSinceNow: 
+ dateWithTimeInterval:sinceDate: 
+ dateWithTimeIntervalSinceReferenceDate: 
+ dateWithTimeIntervalSince1970: 
– initWithTimeIntervalSinceNow: 
– initWithTimeInterval:sinceDate: 
– initWithTimeIntervalSinceReferenceDate: 
– initWithTimeIntervalSince1970: 

일부 참조 날짜 플러스/마이너스 NSTimeIntervalNSDate을 만들; NSDate 개체는 변경 불가능이므로 NSTimeInterval 값을 사용하여 개체가 나타내는 날짜를 변경할 수있는 방법이 없음에 유의하십시오.

자세한 내용은 NSDate Class Reference을 참조하십시오.

이 코드를 해결하려면, 이것은 당신이 그것을 할 거라고 방법은 다음과 같습니다

NSDate *startTime=[NSDate date] ; 
NSDate *endTime=[NSDate date] ; 
NSTimeInterval difference=[endTime timeIntervalSinceDate:startTime]; 
NSDate *newTime = [NSDate dateWithTimeInterval:difference sinceDate:startDate]; 
관련 문제