所以我在我的故事板中创建了一个ViewControl,它有3个子视图.每个代表我想要显示的不同视图,具体取决于在前一个屏幕(NavControl)上选择的表行.我首先检查通过Attributes Inspector的"hidden"属性隐藏的所有子视图.每个视图中的所有对象都不是隐藏的,而是被隐藏的,因为子视图本身是隐藏的(显然).以为我可以使用tag属性我给了三个子视图中的每个子标签一个标签(0,1和2),但无法弄清楚如何使用它(以防万一这对我来说是有用的如何做到这一点我想在这里提到它.
那么,我如何显示然后隐藏这些子视图?我不想在子视图中浏览每个对象并将其隐藏属性切换为true/false我觉得我应该能够"显示/隐藏"整个子视图.从而实现了相同的结果,但更为简洁.
我无法通过网络搜索或stackoverflow搜索找到任何可以帮助我的内容.
我的代码非常简单.我捕获在上一个屏幕中选择的行,并将其传递给包含子视图的详细信息屏幕上的变量.我知道这是有效的,因为我在详细信息屏幕viewDidLoad函数上设置了println().所以现在我所要做的就是进入每个条件并告诉它显示和/或隐藏哪个子视图.
谢谢,我感谢所有这些社区的帮助!没有它,我会迷失方向.
Ada*_*o13 26
您应该IBOutlet为三个子视图中的每一个创建s.然后,您可以直接从这些引用中显示/隐藏它们中的每一个.如果隐藏视图,它将自动隐藏其子视图.
获得视图的插座后,您可以执行以下操作:
viewYouWantToHide.isHidden = true
Mid*_* MP 23
如果每个视图都有标签,则可以使用以下方法隐藏和显示它们:
隐藏:
[[self.view viewWithTag:1] setHidden:YES];
Run Code Online (Sandbox Code Playgroud)
显示:
[[self.view viewWithTag:1] setHidden:NO];
Run Code Online (Sandbox Code Playgroud)
隐藏:
self.view.viewWithTag(1)?.isHidden = true
Run Code Online (Sandbox Code Playgroud)
显示:
self.view.viewWithTag(1)?.isHidden = false
Run Code Online (Sandbox Code Playgroud)
注意:替换1为您的标签值.
Amr*_*gry 12
但是isHidden的事实是检查状态的命名约定,并且是一个getter方法但是尽管在swift中我们使用它作为setter和getter属性
view.isHidden = true
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
67436 次 |
| 最近记录: |