作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
下面是应用程序启动时我的 View 在 IB 中的组织方式,顶部 -> 底部。
用户可以做一些事情来使“Category Table View Header”暂时扩展到“Name View”上 - 但是一旦这样做,分配给“Category Table View Header”的 .TouchDown 操作在与“Name”重叠的任何地方都不再有效查看”(即,用户可以在不与名称 View 重叠的任何地方点击标题,并且它仍然有效)。
我知道这可能会造成混淆,所以我画了一些方框。左边是原始的,右边是用户操作后的 - 问题是右边的红色框上的操作仅在用户点击下半部分而不是上半部分时才有效。
我的猜测是因为标题在 View 层次结构中比名称 View 低,但如果不搞乱一堆约束,我很难改变它。
我也试过设置 nameView.hidden = true,但这不起作用。
最佳答案
如果你想把一个 subview 放在最前面,你可以使用:
SWIFT 4 + 更新
self.view.bringSubviewToFront(yourView)
SWIFT 3 更新
self.view.bringSubview(toFront: yourView)
将 View 发送到后面:-
SWIFT 4+ 更新
self.view.sendSubviewToBack(yourView)
SWIFT 3 更新
self.view.sendSubview(toBack: yourView)
SWIFT 4+ 更新 - 在堆栈中的特定位置插入 View
parentView.insertSubview(yourView, belowSubview: requiredViewOnStack)
parentView.insertSubview(yourView, aboveSubview: requiredViewOnStack)
关于ios - 如何在 Swift 中将一个 View 置于另一个 View 之前?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38780743/
我是一名优秀的程序员,十分优秀!