二合一视图控制器

Posted

技术标签:

【中文标题】二合一视图控制器【英文标题】:Two in one view controller 【发布时间】:2014-07-16 20:21:56 【问题描述】:

android 中,我可以拥有一个带有片段布局的 Activity。然后我可以在片段内交换布局。我如何在 ios 中实现相同的效果?

这是我尝试过但一直卡住的方法:

在父 ViewController p1 我添加一个 ContainerView 作为要交换的视图的持有者。 (请注意,p1 有其他子视图;不仅仅是 ContainerView) 当然,ViewController c1 是为(进入)ContainverView 自动生成的。 所以我在想c1 应该是一个抽象的 ViewController,有两个子 ViewControllers v1v2。 所以此时我正在尝试创建从c1v1 的segue,然后从c1v2。但我无法创建转场:xCode 不会让我这样做。我尝试重新启动 Xcode,但这没有帮助。那么是 Xcode 有问题还是我试图不允许这样做?

了解更多详情

p1 除了 ContainerView 之外还有两个按钮。如果单击 buttonOne,我希望 ContainerView 显示,例如 ImageViews 的水平 TableView;但是如果单击 buttonTwo,那么我希望 ContainerView 显示一些自定义 TableView 单元的垂直 TableView。

在 android 中,我可以通过使用两个片段非常简单地完成此操作:ImagesFragment、OtherDataFragment。然后我交换了fragment 标签的内容,瞧!

【问题讨论】:

@dasdom 对于声望超过 6000 的人,你真的没有在那儿付出任何努力。 xCode 不允许您创建转场是什么意思?你的意思是通过故事板?或者您是否尝试过以编程方式执行此操作 @LyricalPanda,通过故事板:目前我在触摸代码部分之前布置故事板。 您可以轻松地以编程方式完成此操作。但我不知道我们是否可以轻松地在情节提要中做到这一点。这可能很棘手。如果你想以编程方式做,我可以给你一些提示。 @RedDevil,我欢迎帮助。我假设我需要一个 ContainerView。如果这个假设是正确的,那么我的问题是:我如何交换两个 ViewControllers v1 和 v2。如果我的假设不正确:我还能怎么做?谢谢。 【参考方案1】:

我建议看看这个垂直标签栏控制器的例子。它展示了如何创建自定义 segue 以换出容器视图的内容。

Creating a Custom Side Tab Bar using Storyboards and Custom Segues

【讨论】:

谢谢。我会看看并报告。 我对 segue 和控制器也有一个要点:(gist.github.com/AdamPro13/7540047)

以上是关于二合一视图控制器的主要内容,如果未能解决你的问题,请参考以下文章

reactiveCocoa

Centos 7安全之账户问题排解(实验七合一)

如何在 Swift 中一一显示 UITextField?

P4 可编程网元 — 全可编程网元的发展

P4 可编程网元 — 全可编程网元的发展

DHCP+DNS+WEB三合一微型架构搭建