2012-06-18 1 views
0

화면 컨트롤러를 선택하면 내보기 컨트롤러 중 하나에 메시지가 표시되도록하는 방법을 찾아야합니다 (이보기는 처음이 아닙니다. 응용 프로그램에서 볼 수 있으므로 시작할 때 할 수 없습니다). 한 번만 나타나고 해당보기를 다시 선택하면 다시 나타나지 않기를 원합니다. 그러나 앱을 다시 시작하면 다시 나타나기를 원합니다.경고 메시지 만 표시하기 앱 실행시 한 번만 다시 나타납니다.

지금까지, 나는 그것이 아무 문제없이 한 번에 표시 얻을 수 오전 나는 종종 다른보기로 다시 가서 반환하고 나는이 원하는 응용 프로그램을 사용하는 동안은 다시 팝업되지 않습니다. 내가 가지고있는 문제는 응용 프로그램을 다시 시작할 때 적절한보기를 선택할 때 경고 메시지가 나타나기를 원하지만 NSUserDefaults에 저장된 데이터 때문에 나타나지 않습니다.

아이디어가 있으십니까? 이 ViewWillAppear에 나타납니다 : 환경 설정에 기반

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    NSString *alertshown = [defaults stringForKey:@"alertshown"]; { 
     if (alertshown == nil) { 

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Press the Code button" message:@"Take a photo of this screen and show it to get your code" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; 

      [alertView show]; 
      [alertView release]; 

      [defaults setObject:@"alertwasdisplayed" forKey:@"alertshown"]; 
     }} 
+0

app-launch는 무엇을 의미합니까? 앱이 배경에서 전경으로 또는 앱이 다시 시작될 때까지 전환됩니까? – Ahmed

답변

0

, 사용이 필요하면 응용 프로그램의 AppDelegate에의 :

- (void)applicationDidEnterBackground:(UIApplication *)application; 

이 대리자 메서드는 앱이 백그라운드로 전환 할 때 알려드립니다. 위임 메서드에서 작성한 코드는 다음과 같습니다.

[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"alertshown"]; 

희망이 도움이 될 것입니다.

+0

감사합니다. Ahmed, 완벽하게 작동합니다. 나는 약간의 초심자이고 대의원이 일하는 방식을 이해하기 시작하며, 내가 할 때, 그것은 훨씬 더 많은 도움이 될 것입니다. –

+0

당신은 환영합니다 :) – Ahmed

관련 문제