2011-04-26 24 views
0

我有一個簡單的應用程序與UIViewController的兩個子類。從UIViewController方法更改UIWindow提供的視圖

我想通過調用我的一個UIViewController子類中的方法來更改應用程序的UIWindow所顯示的視圖。

本質上我只是搞亂了,我試圖用一個登錄屏幕構造一個簡單的測試應用程序,即在用戶輸入憑證後會顯示一個主視圖。我對iOS編程的窗口和視圖機制不太熟悉,目前我正在閱讀http://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/ViewPG_iPhoneOS/WindowsandViews/WindowsandViews.html#//apple_ref/doc/uid/TP40009503-CH2-SW1並嘗試瞭解一些。

+0

另外,我想這兩個實例化類時加載應用程序或者是可以等到登錄測試完成後實例化主視圖對使用者有用? – 2011-04-26 02:15:16

回答

1

如果這是出於登錄屏幕的目的,您應該直接將主視圖控制器添加到窗口,並在主視圖控制器內添加登錄視圖控制器作爲模態視圖。

裏面的applicationDidFinishLaunching ...

MainViewController *mainViewController = [[MainView....... // instantiate UINavigationController *navController = [[UINavigationController alloc]initWithRootViewController:mainViewController]; 
[mainViewController release]; 
[window addSubview:navController.view]; 

內MainViewController

-(void)viewWillAppear:(BOOL)animated 
{ 
    LoginViewController *loginVC = .... //instantiate 
    [self.navigationController presentModalViewController:loginVC animated:NO]; 
    [loginVC release]; 
} 

如果登錄成功,

[self dismissModalViewControllerAnimated:YES]; 
相關問題