Cocoa touch UIViewController在应用程序启动时显示一次

Cocoa touch UIViewController在应用程序启动时显示一次,cocoa-touch,nsuserdefaults,xib,uivewcontroller,Cocoa Touch,Nsuserdefaults,Xib,Uivewcontroller,应用程序启动时,屏幕是第一页。用户只能单击“接受并继续”按钮继续。 此页面最初仅显示一次&当用户单击“接受并继续”按钮时,此页面不会在随后启动此应用程序时显示。 只有当用户清除了与此应用程序相关的所有数据后,此页面才会在启动时再次显示 创建一个视图控制器。然后,在应用程序开始时加载它 当用户单击“接受并继续”时,继续并将一个布尔值保存在Plist,NSUserDefault中 下次加载应用程序时,请检查此值,并根据保存的布尔值显示屏幕 当用户已清除数据时,执行相同的操作 你似乎在谈论闪屏。如果需

应用程序启动时,屏幕是第一页。用户只能单击“接受并继续”按钮继续。 此页面最初仅显示一次&当用户单击“接受并继续”按钮时,此页面不会在随后启动此应用程序时显示。 只有当用户清除了与此应用程序相关的所有数据后,此页面才会在启动时再次显示

  • 创建一个视图控制器。然后,在应用程序开始时加载它
  • 当用户单击“接受并继续”时,继续并将一个布尔值保存在Plist,NSUserDefault中
  • 下次加载应用程序时,请检查此值,并根据保存的布尔值显示屏幕
  • 当用户已清除数据时,执行相同的操作

  • 你似乎在谈论闪屏。如果需要一些自定义按钮,如accept和continue,可以创建一个自定义视图,并从AppDelegate的
    didFinishLaunching
    方法调用该视图。单击按钮,您可以添加相应的方法。

    您可以使用
    NSUserDefaults

     if ([[NSUserDefaults standardUserDefaults] boolForKey:IS_FIRST_LOGIN])
    {
        showYourPage();
    }
    #########In your Page#######
    -(void) acceptButtonClicked
    {
        [[NSUserDefaults standardUserDefaults] setBool:NO forKey:IS_FIRST_LOGIN];
    }
    
    //第一次启动时设置如下值:

    [[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:@"LaunchingFirstTime"];
    
    之后

    NSString *launch = [[NSUserDefaults standardUserDefaults]valueForKey:@"LaunchingFirstTime"];
    
    if([launch isEqualToString:@"YES"]){
        //Don't Show Screen
    }
    else{
        //Show Screen
    }
    

    希望这能帮助你

    你可以这样做

    self.userDefaults = [NSUserDefaults standardUserDefaults];
    NSString *str = [self.userDefaults valueForKey:@"SecondLaunch"];
    NSLog(@"the string value is : %@",str);
    
    if ([str isEqualToString:@"Second"]) {
        NSLog(@"It's Second Launch");
    } else {
        NSLog(@"It's First Launch");
        [self.userDefaults setObject:@"Second" forKey:@"SecondLaunch"];
        [self.userDefaults synchronize];        
    }
    

    Xman我使用了这个逻辑-(void)viewDidLoad welcomePage*temp=[[welcomePage alloc]initWithNibName:@“welcomePage”bundle:nil];[自我呈现视图控制器:临时动画:是完成:^(无效){}];}else{NSLog(@“screen”);}但其显示警告:尝试显示不在窗口层次结构中的视图!欢迎屏幕没有come@Ram:这是不同的问题..此逻辑正在运行,但我什么时候创建了这些应用程序,并且根据进程的终止方式,其即将出现的默认值可能没有机会保存。选中此复选框我在viewDidLoad中使用了此逻辑,但它不起作用显示警告:尝试显示不在窗口层次结构中的视图!如果可能的话,删除评论:没问题,只是通知你