我是第一次使用 Storyboard。大部分进展顺利,但有一种情况非常不清楚:
我使用标签栏 Controller 作为我的初始 View Controller 。我有三个选项卡,它们每个都是同一 View Controller 类的实例,唯一的区别是我想向每个实例传递不同的数组,以显示不同的数据。
我的想法是我可以在 UITabBarController
实例中使用 prepareForSegue:
将正确的数组传递给每个目标 View Controller ......但也许 UITabBarController
不使用segues来显示选项卡中的每个 View Controller ,因为IB中无法为选项卡内容的“segue”指定 StoryboardID。 (如果我选择将选项卡 Controller 连接到子 Controller 的segue,IB只会在定制器区域中显示“不适用”。)
所以我的问题是:我该如何处理IB中的这种情况?
最佳答案
UITabBarController使用segues,但它是一种特殊的segues。在 IB 中选择 UITabBarController,然后在“实用程序”区域中打开“连接”检查器。您将看到底部有 Presenting Segue(这些由prepareForSegue 处理)和 Triggered Segue,其中包括 viewControllers Segue。这些是选项卡栏中选项卡的segues。它们并不是真正的延续,它们更像是引用。
为了在 IB 中将一个类用于三个不同的 View Controller 作为选项卡,您应该添加三个空(或非空) View Controller 作为选项卡,并使用“实用程序”区域中的身份检查器指定它们的类。这三个类可以是相同的。
关于ios - Storyboard和 UITabBarController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36214993/