請原諒這個簡單的問題,但我想把我的頭髮拉出來試圖在iPhone中獲得一個導航。在標籤欄中切換UIViewController控制器類型應用程序
所以,我有一個標籤欄控制器類型的應用程序與UITabBar和3 UITabBarItems。我有第一個標籤欄項目加載一種「主屏幕/歡迎」,在主屏幕上,有一個按鈕。當用戶點擊按鈕時,我想打開一個不同的UIViewController(LoginViewViewController)來允許該人登錄。
我想基本上,切換UIViewController,然後當他們已經成功登錄,我想更改TabBarItems。
這是我在連接到第一TabBarItem在視圖控制器的.m文件中的代碼:
#import "LaunchViewViewController.h"
#import "LoginViewViewController.h"
@implementation LaunchViewViewController
@synthesize myLoginViewViewController;
- (IBAction)cmdRSVP_Click:(id)sender {
//Try #1
//[self addSubview:myLoginViewViewController.view];
//Try #2
//[[self navigationController] pushViewController:myLoginViewViewController animated:YES];
//Try #3
//LoginViewViewController *myLoginViewViewController2 = [[LoginViewViewController alloc] initWithNibName:@"LoginView" bundle:[NSBundle mainBundle]];
//[self.navigationController pushViewController:myLoginViewViewController2 animated:YES];
//[myLoginViewViewController2 release];
//myLoginViewViewController2 = nil;
//Try #4
//This just changes my screen to all White (expect the TabBarNavigationController
//[self.view removeFromSuperview];
//[self.view insertSubview:self.myLoginViewViewController.view atIndex:0];
// This displays without issue.
[self displayMessage:@"RSVP Clicked":@"Switch to Login View"]; }
如,你可以看到,我已經試過,我已經看到了4周不同的方式在各種教程中。
在嘗試1,2,3:沒有任何反應(沒有崩潰或異常),但警報消息框仍然顯示。
在嘗試4中,選項卡欄控制器上方的屏幕區域更改爲白色,並顯示警報消息,但它從不顯示我的其他ViewController。
任何幫助讓我走上正軌!
在此先感謝! 傑森
嘗試2和3是做正確的方式。您的主屏幕在UINavigationController中嗎? – jtbandes 2010-08-09 04:31:06
是的,它在標籤欄控制器中。在這種情況下,我必須做些不同的事情嗎? – JasonBub 2010-08-09 13:07:29