显示警告信息只有一次,但对应用程序启动再次重现(Displaying an alert messag

2019-10-16 21:33发布

我试图找出一种方式来获得出现在我的视图控制器的一个消息被选择的屏控制器时(这个观点是不是在程序的第一个观点,所以我不能在启动时做)。 我只希望它出现一次,并且在重新选择该视图不会再次出现; 不过,我想,如果应用程序重新启动它再次出现。

到目前为止,我能得到它没有任何问题出现一次,而使用的应用程序,这是我想要的,因为我经常回去到其他视图并返回它不会再弹出。 我遇到的问题是,当我再次启动应用程序时,我想提醒消息时,我选择适当的看法出现,但由于在存储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"];
        }}

Answer 1:

根据自己的喜好,你需要使用你的应用程序的AppDelegate中的:

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

此委托方法将让你知道当你的应用程序进入后台。 您在委托方法编写的代码将是:

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

希望这将有助于。



文章来源: Displaying an alert message only ONCE but to reappear again on app launch