选项卡控制器视图之前的IOS登录屏幕

时间:2012-02-07 09:54:54

标签: xcode

我仍然是IOS开发的新手,我想通过MoralViewcontroller创建一个登录页面。

AppDelegate.h

@interface AppDelegate : UIResponder <UIApplicationDelegate>{

     UITabBarController *tabBarController;   }

@property (nonatomic,retain) IBOutlet UITabBarController * tabBarController

AppDelegate.m

(void)applicationDidFinishLaunching:(UIApplication *)application
{    
  // Override point for customization after app launch 

  [window addSubview:tabBarController. view];   
  [window makeKeyAndVisible];
  LoginViewController *loginView=[[LoginViewController alloc]initWithNibName:@"LoginViewController" bundle:nil];

  [tabBarController.view presentModelViewcontroller: loginView animated:YES];

}

然而,登录视图无法显示,我想我为tabBarController定义错误,但我不知道它有什么问题。有人可以告诉我吗?我在做IOS 5。

非常感谢..

2 个答案:

答案 0 :(得分:4)

我将从tabBarController的rootView中提供一个loginView控制器。

-(void)viewDidLoad
{
   //You can also do this inside a conditional statement, if needed
   LoginViewController *loginView=[[LoginViewController alloc]initWithNibName:@"LoginViewController" bundle:nil];

[self.view presentModelViewcontroller:loginView animated:YES];

}

这是第二种方式

AppDelegate.h

@interface AppDelegate : UIResponder {

 LoginViewController *loginView;  
}

@property (nonatomic,retain) LoginViewController *loginView;

AppDelegate.m

-(void)applicationDidFinishLaunching:(UIApplication *)application 
{
// Override point for customization after app launch
self.loginView=[[LoginViewController alloc]initWithNibName:@"LoginViewController" bundle:nil];
[window addSubview:loginView. view];
[window makeKeyAndVisible];

}

LoginViewController.m

成功登录后调用此方法。

-(IBAction)login:(id)sender
{
//init tabbar with subviews;
    UITabBarController *tabBarController = [[UITabBarController alloc] initW....];
    [self.view addSubview:tabBarController.view];
}

我更喜欢第一种方法,因为你将在AppDelegate中保留tabBarController。

答案 1 :(得分:0)

首先,您必须将Loginviewcontroller添加到窗口中。然后,您必须在单击登录按钮时将tabbarcontroller添加到LoginViewController。

相关问题