我的應用程序是圍繞一個的UITabBarController和第一視圖控制器中我試圖呈現一個內置內VC從呈現視圖控制器「設置視圖」的用戶,但出於某種原因,如果這個設置視圖被呈現超過一旦所有按鈕停止運行並且應用程序徹底崩潰。麻煩內UITabViewController
在FirstViewController.m我:
- (IBAction)showSettings:(id)sender
{
UIViewController *settingsView = [self.storyboard instantiateViewControllerWithIdentifier:@"SettingsViewController"];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:settingsView];
[self.navigationController presentViewController:nav animated:YES completion:nil];
}
其連接到一個UIButton標有 「設置」。
在SettingsViewController.m我:
- (IBAction)done
{
NSLog(@"DONE");
[self.navigationController dismissViewControllerAnimated:YES completion:nil];
}
其連接到一個UIButton標有「做」在SettingsViewController的左上角。
我第一次按「設置」,然後「完成」它沒有問題,但如果我再次按下「設置」按鈕,「完成」按鈕完全失去功能(完全不可點擊),用戶被迫重新啓動應用程序才能繼續使用它。
我的控制檯打印此當應用程序加載時,我相信概括了問題:
Unbalanced calls to begin/end appearance transitions for
<UITabBarController: 0x7f97f5f1e780>
但是,如果我嘗試讓「TabBarController」的實例,目前認爲這樣,我只是得到一個錯誤,我試圖提出一個不在層次結構中的VC ...
我只是不確定在UITabBarController中呈現/關閉視圖控制器的適當方式是什麼,但不是我的應用程序缺少基本功能。我不明白爲什麼FirstViewController不能正常顯示視圖。
任何幫助是極大的讚賞,這是一個非常惱人的錯誤,我不能夠在網上找到一個可行的解決方案其他地方。讓我知道我是否應該提供更多的信息/代碼
編輯:到的UITabBarController
改變錯字UITabViewController
小點:有一個UITabViewController沒有這樣的事情。 – matt
你說'self.navigationController'很奇怪。您尚未在視圖控制器層次結構中解釋此導航控制器的位置。 – matt
有沒有理由試圖用'SettingsViewController'來演示和解除'UINavigationController'? –