0

很可能我错过了一些明显的东西,但我有一个非常简单的要求,这两个似乎都不符合它。UITarBarController/UINavigationController混合

我有一个应用程序与3个不同的意见,但由于我不会在这里进入(基本上视图可能会或可能不会有效,具体取决于在其他视图中完成),使用持久标签作为导航将无法正常工作。我还希望根据需要创建每个视图,并且UITabBarController预先创建所有视图。但是我仍然想要UITabBarController的一些功能 - 能够将它传递给UIViewControllers数组。

UINavigationController提供了根据需要创建其视图的机会,但是我没有办法让前面的视图列表通过,所以我最终使用ViewControllers创建并推送其他(同级)ViewController,是讨厌的。

因此,这里有我的要求:

  1. 我希望能够加入ViewControllers前期
  2. 我希望能够在视图控制器之间进行导航
  3. 我想创建的每个视图控制器作为需要和销毁时导航离开

有什么符合法案?

+0

这是否意味着其他视图的外观取决于您在初始化它们之前在主动视图中所做的操作? – Eimantas

+0

基本上。有3个视图,但视图2只有在视图1中执行了某些操作后才能被访问,视图3可以从视图2中访问,并且可能从视图1访问,具体取决于在1和2中采取的操作。实质上标签的隐喻将无法正常工作,因为视图并非始终都是可访问的,只有使用替代UI从view1 - view3才有意义。 – Undistraction

+0

这就是导航控制器的用途。您应该跳过选项卡(或在第一视图中直观地表示它们)并使用导航控制器。 – Eimantas

回答

0

我会使用AppDelegate来创建一个viewcontrollers的散列,并创建一个导航控制器。 一旦你点击按钮导航到一个新的视图控制器,你可以去散列并寻找特定的视图控制器。如果它没有被创建,你可以在那里创建它。如果你想销毁视图控制器,只需释放它并从哈希中移除即可。