10

我觉得这真的不应该给我带来那么多麻烦,而且我错过了一些东西,但我似乎无法让它发挥作用。所以我想要一个在 3 个不同的 TableView 之间切换的 TabBar。它们都需要一个 NavigationBar 而不是 NavigationController(因为这一切都发生在初始模态 segue 进入 TabBarController 之后)。我所追求的完美示例是 Apple Maps 书签。

我尝试了三种不同的方法,但都以不同的方式失败:

  1. 添加一个 TableView,然后在其中添加一个 NavBar,然后添加 SearchBar。SearchBar 只是替换了 NavBar。
  2. 添加一个视图,然后将导航栏添加到此。然后将 TableView 添加为子视图。当我将 SearchBar 添加到这个 subView 时,它最终位于原型单元格下方(没有尝试运行它,因为我必须编写一个新的 ViewController 来处理 TableView 现在是一个子视图并且认为它不值得的事实它只是考虑到布局问题)。
  3. 添加一个视图,然后在其中添加一个导航栏。然后添加一个具有 TableViewController 的 ContainerView。这只是在运行时崩溃。我不确定这里的错误是什么,因为我不太确定在哪里捕获任何异常......

到目前为止,我已经在 IB 中实现了我的大部分界面,并希望尽可能地保持这种方式,但我确信这里一定有一些明显的东西我遗漏了。我已经很久没有做 iOS 编程了,所以如果我缺少一些基本的东西,请放轻松!任何帮助将不胜感激。即使只是说我应该采用上述哪种方法并继续尝试。谢谢!

编辑

我可能应该提到,当我说 TableViewController 时,我的意思是 TableViewController 的自定义子类,它使用 FetchedResultsController 来填充单元格。

4

2 回答 2

10

如果您要对新视图控制器(或带有指向导航控制器的选项卡的选项卡栏控制器)进行模态搜索,并且希望该视图控制器具有导航栏,那么您应该选择您想要的视图控制器想要以模态方式呈现,将其嵌入导航控制器(编辑器->嵌入->导航控制器),然后以模态方式连接到导航控制器。相同的概念适用于您的选项卡栏控制器,但它们将是关系序列。 带导航栏的模态序列图像

于 2013-10-11T19:17:49.923 回答
2

您应该向 UIViewController(不是表格视图控制器)添加导航栏,然后添加表格视图,并在该表格视图中添加搜索栏和单元格。我已经对此进行了测试,并且效果很好。

于 2013-08-24T16:22:34.130 回答