Iphone 在选项卡控制器视图之前显示登录屏幕

Iphone 在选项卡控制器视图之前显示登录屏幕,iphone,objective-c,ios,xcode,Iphone,Objective C,Ios,Xcode,我有一个tabBarController应用程序,并将.xib文件用于界面而不是故事板 默认情况下,我在appdelegate中有此代码 self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // Override point for customization after application launch. UIViewController *viewController1 = [[Po

我有一个tabBarController应用程序,并将.xib文件用于界面而不是故事板 默认情况下,我在appdelegate中有此代码

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
UIViewController *viewController1 = [[PopAdsFirstViewController alloc] initWithNibName:@"PopAdsFirstViewController" bundle:nil];

UIViewController *viewController2 = [[PopAdsSecondViewController alloc] initWithNibName:@"PopAdsSecondViewController" bundle:nil];

self.tabBarController = [[UITabBarController alloc] init];

self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, nil];

self.window.rootViewController = self.tabBarController;

[self.window makeKeyAndVisible];

return YES;

我已经创建了一个登录视图,但不知道如何在tabBarView之前显示它,并在成功登录后隐藏t。

一种方法是在启动时将其显示为modalView。成功登录后是否解除? 例如:

并将其忽略(隐藏)

关于ModalViewController的文档:
一种方法是在发射时将其显示为modalView。成功登录后是否解除? 例如:

并将其忽略(隐藏)

关于ModalViewController的文档:

我为我的一个应用程序做这件事的方法就是按正确的顺序添加它们。将选项卡栏控制器添加到窗口中,然后在选项卡栏顶部添加登录控制器。然后展示你的窗户。用户只会看到您的登录控制器。登录后,您可以从视图中删除登录控制器

如果您在登录之前有需要隐藏的信息,这种方法可能是最好的。另一种方法是只启动login视图。成功登录后,删除登录并添加选项卡栏控制器。两种方式都可以


以模式呈现可能是最简单的,但在呈现之前需要一个视图。因此,如果登录控制器下的数据和视图不那么敏感,你可以考虑这个选项。

< P>我为我的一个应用程序做的就是把它们按正确的顺序添加。将选项卡栏控制器添加到窗口中,然后在选项卡栏顶部添加登录控制器。然后展示你的窗户。用户只会看到您的登录控制器。登录后,您可以从视图中删除登录控制器

如果您在登录之前有需要隐藏的信息,这种方法可能是最好的。另一种方法是只启动login视图。成功登录后,删除登录并添加选项卡栏控制器。两种方式都可以


以模式呈现可能是最简单的,但在呈现之前需要一个视图。因此,如果登录控制器下的数据和视图不那么敏感,您可以考虑这个选项。

< P>另一种方法是在<强> AppReave.h文件<强> >/P>中使用<代码> Login VIEW SCORDER委托/<代码> > 在你的

    #import "yourLoginViewController"
   //and add LoginViewControllerDelegate
然后在你的

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    yourLoginViewController *loginView = [[yourLoginViewController alloc] initWithNibName:@"yourLoginViewController" bundle:nil];
    loginView.delegate = self;
    [window addSubview:loginView.view];
    [window makeKeyAndVisible];
}
//add this one
- (void)loginViewControllerDidFinish:(yourLoginViewController *)loginViewController {
    [window addSubview:tabBarController.view];
}

另一种方法是在appDelegate.h文件中使用
LoginViewControllerDelegate

在你的

    #import "yourLoginViewController"
   //and add LoginViewControllerDelegate
然后在你的

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    yourLoginViewController *loginView = [[yourLoginViewController alloc] initWithNibName:@"yourLoginViewController" bundle:nil];
    loginView.delegate = self;
    [window addSubview:loginView.view];
    [window makeKeyAndVisible];
}
//add this one
- (void)loginViewControllerDidFinish:(yourLoginViewController *)loginViewController {
    [window addSubview:tabBarController.view];
}

@KassemBagher我用隐藏代码编辑了我的答案,并链接到模态ViewController上的文档。@KassemBagher我用隐藏代码编辑了我的答案,并链接到模态ViewController上的文档。