2011-12-14 104 views
2

我正在設計一個iphone應用程序,它應該最初顯示登錄屏幕,之後它應該顯示具有5個選項卡的標籤欄控制器。 最初能夠啓動登錄屏幕,但在此之後,我無法顯示標籤欄控制器,請幫助我與源代碼人。 這裏是我的代碼: 這是一個基於視圖的應用在標籤欄控制器之前顯示登錄屏幕?

application.M

-(void)applicationDidFinishLaunching:(UIApplication *)application {  

    // Override point for customization after app launch 
     [window addSubview:viewController.view]; 
    [window addSubview:tabBarController. view]; 
    [window makeKeyAndVisible]; 
    LoginView *loginView=[[LoginView alloc]initWithNibName:@"LoginView" bundle:nil]; 
    [window addSubview:loginView.view]; 
} 

做這個標籤欄控制器在登錄屏幕的底部initially.And也一時無法被顯示在標籤欄項目之間切換。

+0

你需要接受的答案你前面的問題,令人沮喪的人把精力回答你的問題,如果你不能打擾接受他們的答案。 – 2011-12-15 11:18:20

回答

3

你可以做的是以下幾點。

啓動Tabbar作爲主屏幕,然後在視圖加載或顯示之前顯示登錄屏幕並在成功登錄後關閉登錄屏幕。

編輯:有關代碼示例看由Maulik

+0

嗨maulik你可以幫助我最初顯示登錄屏幕的代碼,以及如何在加載標籤欄控制器之前解除登錄屏幕?並且重要的注意事項是我沒有使用導航控制器 – 2011-12-14 12:44:23

+0

只是看他的回答,代碼是有的... – Armand 2011-12-14 12:45:01

1

嘗試提供代碼以執行以下操作:

[窗口makeKeyAndVisible];
LoginView * loginView = [[LoginView alloc] initWithNibName:@「LoginView」bundle:nil];
[窗口 addSubview:loginView.view];

您將首先顯示登錄。登錄完成後,你應該將消息發送到應用程序委託這樣他就可以登錄查看與您的tabBarController之間切換:

-(void)loginFinished{ 
    window.rootViewController=tabBarController; 
} 

我勸你:

1 - 有IBOutlets您LoginViewController和UITabBarViewController,所以你可以很容易地使用它們。

2-使用通知,以便您的應用程序委託知道何時切換控制器。

0

假設你有TabBarController類,按子類UITabBarController

您也可以在登錄視圖完成作業後推送標籤欄控制器。

在Login.m文件

- (void) doLogin 
{ 
    if(login) 
    { 
    TabBarController *aTabBarController = [[TabBarController alloc] initWithNibName:@"TabBarController" bundle:nil]; 
    [self.navigationController pushViewController:aTabBarController animated:YES]; 
    [aTabBarController release];  
    } 
} 
相關問題