9

我有一个相当复杂的 UIView,其中包含几个嵌套视图,这些视图根据各种响应显示 - 所有这些都在情节提要中布置。

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

4

5 回答 5

3

我有 2 个解决方法。

A) 将视图控制器大小更改为自由形式。将其大小设置为非常大,以便我可以隔开视图。

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

或者 xcode 开发人员可以简单地为视图和控件添加一个设计可见的复选框......但我会把我的咆哮带到其他地方。

于 2014-09-22T01:00:41.160 回答
3

我一直在试图找出一个很好的方法来做到这一点,一些功能,比如从情节提要中隐藏视图及其子视图(而不是从实际应用程序中),但找不到任何东西。

这不是最好的方法,但这是我目前的做法......

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

于 2014-06-17T12:21:00.797 回答
3

在 xcode 7 中,您可以从情节提要中做到这一点

未安装

有关更多详细信息 https://stackoverflow.com/a/25213491/4879683

于 2016-01-24T15:26:23.050 回答
1

也许这可以帮助你:

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

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

于 2014-07-04T10:39:03.620 回答
0

您可以向场景停靠栏添加额外的视图。

在此处输入图像描述

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

例如,我有一个全屏加载视图,我将其添加到场景停靠栏中,而不是在情节提要中隐藏视图控制器。我可以在代码中将加载视图添加到视图控制器的视图层次结构中:

@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

于 2016-05-24T18:38:32.293 回答