2012-02-07 80 views
1

我仍然是新手IOS開發,我想通過MoralViewcontroller創建一個登錄頁面。標籤控制器視圖之前IOS登錄屏幕

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

非常感謝..

回答

0

所有你需要的Loginviewcontroller添加到window.And首先,你必須將tabbarcontroller添加到LoginViewController當登錄按鈕點擊。

+0

嗨斯里,感謝您的回覆,您能解釋更多細節嗎?非常感謝:) – 2012-02-07 10:12:06

+0

這意味着在didFinishLaunchingWithOptions方法中添加loginviewcontroller到Window.And在應用程序委託寫一個像這樣的方法 - (void)showTabBar { \t [self.window addSubview:tabBarController.view]; \t [loginviewController.view removeFromSuperview]; }。當你點擊loginviewcontroller – Tendulkar 2012-02-07 10:57:52

+0

中的提交或登錄按鈕時,致電上述方法很抱歉打擾你。啓動頁面是TabBarController併爲登錄頁面提供道德視圖? – 2012-02-07 12:17:56

4

我會從tabBarController的根視圖呈現一個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。

+2

感謝您的幫助Krrish。我如何設置tabBarController的rootView?因爲目前我在storyboard中添加了tabBarController,但我不知道如何爲它定義tabBarController。 – 2012-02-07 12:24:25

相關問題