Ios 通过Storyboard应用程序上的按钮连接导航控制器

Ios 通过Storyboard应用程序上的按钮连接导航控制器,ios,uinavigationcontroller,uitabbarcontroller,uistoryboard,Ios,Uinavigationcontroller,Uitabbarcontroller,Uistoryboard,我第一次使用故事板 这是一张照片: 我的应用程序是一个TabBar应用程序。在“主”屏幕上,我有一个设置按钮,我想将其连接到SettingsViewController,该控制器已嵌入到导航控制器中(因为它必须以这种方式继续-连接到设置屏幕的其他部分) 另一幅图片: 现在:我已经尝试将设置按钮(命令+控制拖动)连接到控制器(模式segue)=崩溃。试图连接设置控制器(模式segue)=崩溃 以编程方式尝试过:为设置按钮创建iAction,然后调用设置VC,但也会崩溃 注意:这个应用程序有更多

我第一次使用故事板

这是一张照片:

我的应用程序是一个TabBar应用程序。在“主”屏幕上,我有一个设置按钮,我想将其连接到SettingsViewController,该控制器已嵌入到导航控制器中(因为它必须以这种方式继续-连接到设置屏幕的其他部分)

另一幅图片:

现在:我已经尝试将设置按钮(命令+控制拖动)连接到控制器(模式segue)=崩溃。试图连接设置控制器(模式segue)=崩溃

以编程方式尝试过:为设置按钮创建iAction,然后调用设置VC,但也会崩溃

注意:这个应用程序有更多的屏幕,但它们都可以正常工作。只是与设置VC的连接导致应用程序崩溃

任何想法都将不胜感激

以下是错误日志:

因此您得到了错误:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 
'-[UITableViewController loadView] loaded the "Eab-23-IvL-view-eGY-e2-X6m" nib but didn't 
get a UITableView.'

这意味着从UITableViewController继承的设置视图控制器在情节提要中没有实际的UITableView。一个肯定会起作用的修复方法是,只需从情节提要中删除“设置”视图控制器,然后拖动一个表视图控制器来代替您删除的那个。然后继续在identity inspector中为它提供正确的类,并设置所有的Segue和connections

使用
UIToolBar
时,如果有适当的方法来处理它,则使用的是
UINavigationBar
。 然后,您可以设置一个按钮,将该按钮连接到settingViewController(control+拖动),然后选择
模式
,为该序列设置一个名称,还可以控制并拖动条形按钮项到您的viewController,并按如下方式连接:

- (IBAction)btnSettings:(id)sender {
    [self performSegueWithIdentifier:@"settingsSegue" sender:sender];
}

然后它就可以工作了。

你应该把按钮连接到导航控制器上——不清楚你是否尝试过。你能添加崩溃日志吗?我添加了崩溃日志。当时它连接到导航控制器@rdelmar。我想我已经尝试了一切:)引发崩溃的异常是什么?我做到了。仍然崩溃。我在上面的评论中提到了这一点。但是崩溃时的上升异常是什么呢?是的,但那是十六进制调用堆栈,不是很有用!最重要的是,应该有一些人类可读的信息,这对理解这个问题应该更有帮助!***由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“-[UITableViewController loadView]加载了“Eab-23-IvL-view-eGY-e2-X6m”nib,但未获取UITableView。”嗯。这意味着什么?连接到视图控制器(设置)的类继承自UITableViewController。在您发布的故事板图片中,设置视图控制器中似乎没有UITableView,为什么它继承自UITableViewController?我可以在选项卡式视图上放置导航条-?您可以随时放置导航条。