2011-12-22 132 views
0

我在我的應用程序中有一個登錄視圖,它在用戶輸入正確的用戶名和密碼後加載主菜單視圖。我用這個去主功能表視圖:註銷按鈕navigationController問題導航欄

MenuViewController *menuViewController=[[MenuViewController alloc] initWithNibName:@"MenuViewController" bundle:nil]; 
     [email protected]"Felton"; 
     UINavigationController *tnavController=[[UINavigationController alloc] initWithRootViewController:menuViewController]; 
     tnavController.view.frame=CGRectMake(0, 0, 1024, 748); 
     [menuViewController release]; 
     self.navController=tnavController; 
     [navController release]; 
     for(UIView *subview in self.view.subviews) 
     { 
      [subview removeFromSuperview]; 
     } 
     [self.view addSubview:self.navController.view]; 

所以我的問題是我要去究竟按下注銷按鈕時,返回到登錄頁面。我已經嘗試了與上述相同的方式,但是我遇到的問題是每次用戶按下注銷按鈕時,登錄頁面都會獲得1個導航欄,並且每次都會彼此堆疊在一起。有什麼辦法可以阻止這種情況發生?因爲,我的登錄頁面不應該有導航欄。

thanx提前

回答

1

雖然它從你的問題不明確,通過您的應用程序的具體流程是什麼,你當然不應該添加navController視圖作爲一個子視圖。

您最好將主菜單作爲主窗口的rootViewController,然後在其上呈現登錄視圖控制器(使用presentModalViewController:)。

在您的登錄視圖控制器中創建一個委託協議,並將主菜單作爲委託。當他們登錄時,委託方法觸發,主菜單關閉登錄視圖。當他們註銷時,主菜單可以再次呈現登錄視圖。