2010-12-04 181 views
0

我正在創建一個應用程序,用戶需要先登錄並且只有在該應用程序之後才能查看應用程序中的任何內容。爲此,我創建了一個名爲'AuthView'的新XIB文件。在TabBar應用程序模板中啓動應用程序之後加載不同的XIB文件

我知道我需要將代碼放在'applicationDidfinishLaunching'方法中,但我不知道需要將哪些代碼放在裏面。

我正在使用'標籤欄應用程序'模板開發應用程序。

任何幫助將不勝感激。 :)

回答

1

默認情況下,ApplicationDidFinishLaunchingWithOptions方法結束看起來是這樣的:

[window addSubview:tabcontroller.view]; 
[window makeKeyAndVisible]; 
return YES; 

添加首先出現在所有內容上的viewController很容易。首先,添加的viewController到您的實現(使用控制器的真名,明明):

#import "InitialScreenViewController.h" 

然後修改ApplicationDidFinishLaunchingWithOptions方法的最後加入兩行,如下所示:

[window addSubview:tabcontroller.view]; 
initialScreenViewController = [[InitialScreenViewController alloc] init]; 
[window addSubview:initialScreenViewController.view]; 
[window makeKeyAndVisible]; 
return YES; 

一旦你已經驗證了登錄(或者你想用初始屏幕做的任何事情),只需在初始屏幕viewController中像這樣解除它:

[self.parentViewController.view setHidden:YES]; 

如果需要,您可以稍後再顯示它,例如添加註銷和重新登錄功能。

+0

你好,我試過這種方法,但應用程序啓動爲空白。 :( – 2010-12-05 10:04:11

0

更好U第表明烏爾身份驗證視圖...另一種觀點認爲地方烏爾的TabBar控制器..

0

當你正在使用的標籤欄應用程序模板,你UIApplicationDelegate文件應該有 名爲伊娃的UITabBarController tabBarController。

您需要刪除此ivar(並將其從mainWindow XIB文件中刪除)。

一旦做到這一點,回去的applicationDidFinishLaunching方法和Windows這樣添加authentificate觀點:

MyAuthentificateViewController * viewController = [[[MyAuthentificateViewController alloc]initWithNibName:@"XIBFilename" bundle:nil] autorelease]; 
[windows addSubview:myAuthentificateViewController.view]]; 
相關問題