我試過Google上的每個解決方案,似乎沒有任何工作。到目前爲止,我已經通過App Delegate實現了一個UINavigationController,現在我想通過單擊我在界面生成器中創建的UIButton來更改爲WebViewController,但按鈕似乎沒有做任何事情我運行該應用程序。請記住,我想把它推到我的WebViewController視圖。通過UIButton(UINavigationController)從一個視圖推送到另一個視圖
AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:self.viewController];
[self.window addSubview:navigationController.view];
[self.window makeKeyAndVisible];
return YES;
}
ViewController.m
- (IBAction)createFile:(id)sender {
WebViewController *webViewController = [[WebViewController alloc] initWithNibName:@"WebViewController" bundle:NSBundle.mainBundle];
[self.navigationController pushViewController:webViewController animated:YES];
}
注:在我已經連接的CreateFile給按鈕的界面生成器。
據我所知,這通常被稱爲超容易,但由於某種原因,我從來沒有得到它的工作。提前致謝。
編輯:我添加了保溫性,sythesized它並添加到我的代碼在ViewController.m文件:
WebViewController *webViewController = [[WebViewController alloc] initWithNibName:@"WebViewController" bundle:NSBundle.mainBundle];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:webViewController];
[self.navigationController pushViewController:webViewController animated:YES];
但現在點擊按鈕,並返回一個SIGABRT應用程序崩潰: 「不止一次推送相同的視圖控制器實例(WebViewController:0x1ed70e80)」
現在你在相同的導航棧上推動兩次相同的視圖。您的init方法使用webViewController作爲rootViewController,然後嘗試再次推送完全相同的webViewController。 – richerd 2012-03-04 01:45:24
也分配的根視圖控制器時,你應該使用self.window.rootViewController = navigationController而不是[self.window addSubView:navigationController.view] – richerd 2012-03-04 01:47:00
好吧,我用[self。替換了[self.window addSubView:navigationController.view]。 window.rootViewController = navigationController「,我拿出initWithNibName:@」WebViewController「bundle:NSBundle.mainBundle],但我仍然得到相同的錯誤。 – 2012-03-04 01:54:47