有没有办法让故事板上的自定义容器视图控制器的行为与UITabBarController
非常相似?
我的容器视图控制器类似于UITabBarController
:
但它与UITabBarController
的不同之处在于:
UIControl
,而不是屏幕底部的标签栏。除此之外,我非常想以一个非常类似的方式登录我的应用程序UITabBarController
是故事板的:
但是,我无法实现这一目标。有没有办法(比人工使我的切换容器视图控制器成为UITabBarController
的子类更好)?
答案 0 :(得分:1)
据我所知,这是故事板没有应有的用处之一。
根据我的看法,您可以手动插入所有切换诱导小部件,将它们连接到各自的目标视图控制器,并将生成的segue配置为您的自定义UIStoryboardSegue
子类的实例覆盖perform
并在您的容器视图控制器中可选地实现prepareForSegue:sender:
...但是(a)您可能已经想到了这一点而且(b)对我来说,这几乎听起来不像你的样子首先瞄准。
由于这个原因和其他原因,我会(并且已经这样做了......)在这种情况下完全避免故事板 - 而是 - 将NIB与IBOutletCollection
结合使用(不支持)在故事板中 - 你无法连接任何东西!)视图控制器。
在我的情况下,我可以使用连接的视图控制器的UISegmentedControl
的标题/图像属性动态填充UITableView
或tabBarItem
行的片段。
然而,这是权衡,因为您失去配置IB中视图控制器之间转换的能力。此外,它依赖于隐含的合同,视图控制器具有正确配置的tabBarItem
,无法在IB中表达。
在我的情况下,这没关系,但你的里程可能会有很大差异!
将容器的布局和使用拆分为单独的NIB有助于简化操作。