在UIView中隐藏非子UIView

时间:2016-10-01 12:44:23

标签: ios swift uitableview uiview

我想隐藏UIView中的非孩子UIView,但我不知道该怎么做。

具体来说,我有UITableView。每个UITableViewCell内部都有另一个视图(称为wrapperView的包装器视图)。包装器在IB中设置了一些标签,一些以编程方式创建。我创建了一个自定义幻灯片机制,在包装器下面显示按钮(就像标准一样)。

以编程方式创建的标签不会超过包装器的边界,因为它会剪切子视图。问题在于IB中创建的标签。它们是contentView的子视图。

如何解决这个问题?有没有办法让UIView在同一级别(不是父母或孩子)剪辑其他观点?或者"转移"包装器视图的标签?

1 个答案:

答案 0 :(得分:2)

它并不完全清楚你在问什么。视图将仅剪切其子视图,而不是恰好落在其框架矩形内但不是子视图的视图。

如果要将视图对象从一个视图层次结构移动到另一个视图层次结构,可以使用[1,2,[3,[4,[5,6]]]]来执行此操作。这将自动从它的当前父视图中删除它。引用Apple文档:

  

视图只能有一个超级视图。如果视图已经有超视图和   该视图不是接收者,此方法删除了以前的   在使接收器成为新的超级视图之前的超视图。