0
현재 날짜부터 10 분이 경과 할 때까지 카운트 다운 타이머가 있습니다.뷰를 바꿀 때 내 NSDate 카운트 다운 타이머가 변경됩니다.
뷰에 올 때 완전히 아래로 카운트 다운되지만 뷰를 변경하고 다시 돌아올 때 타이머가 멈추고 아무도 올바른 방향으로 나를 가리킬 수 있습니까?
-(void)updateCountdown {
dateFormatter = [[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"YYYY-MM-dd-HH-mm-ss"];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSUInteger unitFlags = NSMinuteCalendarUnit|NSSecondCalendarUnit;
NSDateComponents *dateComponants = [calendar components:unitFlags fromDate:startingDate toDate:endingDate options:0];
NSInteger minutes = [dateComponants minute];
NSInteger seconds = [dateComponants second];
NSString *countdownText = [NSString stringWithFormat:@"Free Check: %ld:%ld", (long)minutes, (long)seconds];
timeLabel.text = countdownText;
NSLog (@"Startdate is %@", startingDate);
NSLog(@"Enddate is %@", endingDate);
//Attempt at saving the time but I guess this only saves the text?
NSString * saveStringTime = timeLabel.text;
NSUserDefaults * defaultsTime = [NSUserDefaults standardUserDefaults];
[defaultsTime setObject:saveStringTime forKey:@"saveStringTime"];
[defaultsTime synchronize];
[self performSelector:@selector(updateCountdown) withObject:nil afterDelay:1];
}
언제든지 내 ViewDidLoad에 무엇이 필요할까요?
당신은 "savedTime"에서 다시 시작 viewWillAppear에서 "savedStringTime"을 얻을 수 있습니다
돌아와서 다시 떠날 때 볼 컨트롤러의 할당이 해제됩니까? –
잘 모르겠습니다. 어떻게 확인할 수 있습니까? – user3739958
dealloc을 구현하고 로그를 넣거나, viewDidLoad에 로그를 넣고 컨트롤러로 돌아갈 때 다시 호출되는지 확인할 수 있습니다. – rdelmar