NSDates를 올바르게 사용하는 방법을 이해하는 데 어려움을 겪고 있습니다.NSDates 및 TimeIntervals
은 내가 timingDate = [NSDate date];
를 인스턴스화하는 이벤트를 가지고 내가 나중에 사용자의 터치 betweeen 시간 간격을 기록하는 것에. 그래서 timingDate와 사용자 터치 사이의 간격을 밀리 초 단위로 찾고 싶습니다. 그런 다음 touchDate를 touchTime과 같게 재설정하여 다음에 화면을 터치하면 이전 터치와 현재 터치 사이의 차이를 찾을 수 있습니다. 나는 그것이 의미가 있기를 바랍니다. 하지만 NSDates 또는 NSIntervals를 사용하는 방법을 이해할 수 없기 때문에 서클에서 돌아 다니고 있습니다. 속성 간격 touchTime 및 timingDate는 모두 현재 NSDate 유형입니다. - 맞습니까?
그래서 내가-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
touchTime = timingDate;
interval = [[NSDate date] timeIntervalSinceDate:timingDate]; // should be the time difference from when the timingDate was first set and when the user touched the screen.
touchTime = [[[NSDate date]timeIntervalSinceDate:timingDate]doubleValue];
timingDate = [NSDate dateWithTimeIntervalSinceReferenceDate:touchTime];
NSLog(@"Time taken Later: %f", [[NSDate date]timeIntervalSinceDate:timingDate]);
}
'timeIntervalSinceDate'는 객체 유형이 아니라 간단한 숫자 유형 인 'NSInterval'을 반환합니다. 이것은 실제로'double'의 별칭입니다. 따라서'NSInterval'을'double'으로 변환하기 위해서는'doubleValue'가 아닌'(double)'을 사용하여 간단하게 캐스트 할 수 있습니다. –