【问题标题】:Lift UIView above view将 UIView 提升到视图上方
【发布时间】:2014-02-05 12:21:47
【问题描述】:

我有一个有趣的问题。

我有视图 (UIView) A 和子视图 A.1, A.2,... 在上面我有另一个视图 (UIView) B。 我需要它在 A 之上的 B(因为来自 A 的一些视图在视图 B 下方消失)。

我需要的只是视图 B 上方的视图 A(例如 A.1)的一个子视图。

有没有办法将子视图提升到另一个视图之上,以便所有其他视图都保持在下方?

【问题讨论】:

  • 你所要求的是不可能的。如果 A.1 需要出现在 B 之上,那么 A.1 不应该是 A 的子视图,其中 B 在 A 之上。

标签: ios xcode uiview hierarchy subview


【解决方案1】:

不,您不能这样做...如果您将SubviewToFront A 带入,那么它的所有子视图都显示在 B 上方。

在这种情况下,您必须隐藏您不想看到的子视图。

您可以使用以下方法在顶部显示 A。

[A.superview bringSubviewToFront:A];

或者你可以用这个方法把B放在A下面。

[B.superview sendSubviewToBack:B];

【讨论】:

    【解决方案2】:

    是的,您可以使用这两个功能来做到这一点:

    [self bringSubviewToFront:view];
    [self sendSubviewToBack:view];
    

    In 操作视图的 Z-index。

    【讨论】:

    • 他要求 A (A.1) 的子视图出现在 B 上方,其中 B 在 A 上方。您的代码只会使 A.1 高于 A.2。
    猜你喜欢
    • 2020-12-18
    • 1970-01-01
    • 2021-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多