2014-10-20 59 views

回答

0
if([[NSUserDefaults standardUserDefaults]integerForKey:@"launchCount"]==0){ 
     [[NSUserDefaults standardUserDefaults]setInteger:1 forKey:@"launchCount"]; 

    }else{ 
     [[NSUserDefaults standardUserDefaults]setInteger:[[NSUserDefaults standardUserDefaults]integerForKey:@"launchCount"]+1 forKey:@"launchCount"]; 

    } 
+0

這個答案需要很多工作。它在哪裏?這是如何顯示警報視圖的?爲什麼有這個'if'聲明呢?只要獲得價值,增加價值,存儲它。你不需要爲'0'進行特殊檢查。並使用一個變量。無需像現在這樣兩次讀取當前值。 – rmaddy 2014-10-20 18:04:38

+0

@NofelMahmood thnx!你有一個示例代碼如何做到這一點?太感謝了! – Jan 2014-10-20 18:07:20

+0

@rmaddy thnx!你有一個示例代碼如何做到這一點?太感謝了! – Jan 2014-10-20 18:13:17

4
int launches = [[NSUserDefaults standardUserDefaults] integerForKey:@"launchCount"]; 
if (launches > 3) { 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"My Alert" 
                message:@"Some message" delegate:nil 
             cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
    [alert show]; 
} 
[[NSUserDefaults standardUserDefaults] setInteger:launches+1 forKey:@"launchCount"]; 
+0

謝謝你的回答。如果我將這段代碼添加到viewcontroller的viewDidAppear中,3次後重新打開後沒有任何反應。 – Jan 2014-10-20 18:43:56

+0

如果你在最後一行放置了一個斷點,那麼每次啓動時'launch'的值是多少? – 2014-10-20 18:46:50

+0

未找到類,而是使用默認的NSManagedObject。當我將代碼添加到ViewDidLoad時,它總是顯示警報。 – Jan 2014-10-20 18:51:44

相關問題