Xcode - 嵌套的故事板视图 - 隐藏/显示?

时间:2013-10-24 15:23:34

标签: xcode

我有一个相当复杂的UIView,其中包含几个嵌套视图,这些视图根据各种响应显示 - 所有这些视图都在故事板中展示。

有没有办法隐藏前景中的视图以在后台处理视图?因为它非常繁琐地选择特定元素来安排/风格!?

5 个答案:

答案 0 :(得分:3)

我一直试图想出一个很好的方法来做到这一点,有些功能就像从故事板中隐藏视图及其子视图(而不是从实际应用程序中隐藏),但找不到任何东西。

这不是最好的方法,但我现在是这样做的...

我所做的是从文档大纲中选择我想要“隐藏”的视图,并将常量(屏幕宽度/高度)值添加到其x / y原点值,以将它们推出屏幕。我还将这些视图(Identity Inspector> Document> Label)的文档标签更改为“隐藏”之类的内容,以便稍后我可以从文档大纲中搜索“隐藏”视图并将它们放回原来的位置。

答案 1 :(得分:3)

我有2个工作。

A)将视图控制器大小更改为自由形式。将它的大小设置得非常大,这样我就可以将视图分开。

B)使用视图文档大纲(最低的最前面)的排序顺序,并在第一个视图下添加图像视图(与视图背景相同)以阻止其他视图。然后在完成编辑后删除它。

或者xcode开发人员可以简单地为视图和控件添加一个设计可见的复选框....但是在别的地方接受我的咆哮。

答案 2 :(得分:2)

在xcode 7中,您可以从storybord

进行操作

un-chech installed

了解更多详情 https://stackoverflow.com/a/25213491/4879683

答案 3 :(得分:1)

也许这可以帮到你:

  • 在Finder中打开故事板并使用简单的文本编辑器(而不是xcode)进行编辑。 您将看到它只是一个xml文件。查看要隐藏的视图,并在参数列表中添加hidden =“YES”。 这就是我在自己的项目中所做的。

  • 在Xcode中选择故事板时,您有一个显示所有视图控制器及其层次结构的面板。如果更改元素的顺序,则更改背景/前景顺序。

答案 4 :(得分:0)

您可以向场景底座添加额外的视图。

enter image description here

这些视图与视图控制器一起启动,但不会添加到视图控制器的视图层次结构中。您可以使用IBOutlets引用它们。

e.g。我有一个全屏加载视图,我添加到场景停靠站,而不是掩盖故事板中的视图控制器。我可以在代码中将加载视图添加到视图控制器的视图层次结构中:

@IBOutlet weak var loadingView: UIView!

...

loadingView.frame = view.bounds
loadingView.autoresizingMask = UIViewAutoresizing.FlexibleWidth.union(UIViewAutoresizing.FlexibleHeight)
view.addSubview(loadingView)

参考:https://developer.apple.com/library/ios/recipes/xcode_help-IB_storyboard/Chapters/AddViewsToDock.html