2011-03-30 4 views
0

난 그냥 카운트를 낮추는 법을 알고 싶습니다. 내가 구글에서 몇 가지 검색을했는데 몇 가지 정보가이 응용 프로그램을 만들었어요, 그들은 NSDate 및 NSCalendar.however 나는 모든 정보를 저장하고 사용자가 응용 프로그램을 다시 열 때로드 할 수 있어야한다고 말했다, 내가 사용해야 sqlite 또는 핵심 데이터? 감사iphone 카운트 다운 이벤트

답변

0

벤,

1. Store your time (NSDate) at the appropriate time. 
     NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
     [defaults setObject:[NSDate date] forKey:@"CheckedInTime"]; 
     [defaults synchronize]; 
  1. 앱이 활성화됩니다 다시 : (예) -

    (무효) applicationDidBecomeActive : (UIApplication *) 응용 프로그램

시간이 만료되었는지 확인하려면 타이머를 시작하십시오.

앱이

- (void)applicationWillResignActive:(UIApplication *)application 

감사를 얻을 때마다

self.checkinTimer = [NSTimer scheduledTimerWithTimeInterval:60 target:self selector:@selector(checkinTimerCheck:) userInfo:nil repeats:YES]; 

- (void) checkinTimerCheck:(NSTimer *) timer { 
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];    
    NSDate * checkinTime = [defaults objectForKey:@"CheckedInTime"]; 

    float hours = HOWEVER_MANY_HOURS_NEED_TO_PASS_TO_EXPIRE_IN_SECONDS; 
    if (hours < 0) { 
     [self alertUserThatTimeHasExpired]; 
    } 
} 

는, 타이머 체크를 무효화