BringSubViewToFront在AutoLayout中重新定位UIView

时间:2015-03-15 17:44:28

标签: objective-c swift

使用Autolayout,只要调用bringSubviewToFront,UIView就会重置。

我尝试使用txtViewPosition设置原始位置:

override func viewDidLayoutSubviews() {
    if txtViewPosition != nil { // original position
        txtView.frame = txtViewPosition!
    }
}

看起来视图是正确的位置,但它仍然显示在其原始位置(在AutoLayout中设置)。

1 个答案:

答案 0 :(得分:0)

由于autoLayout移动视图的方式发生了变化。 不要忘记你的约束。 比直接更新帧更好,你应该更新约束。 iOS将始终更新您的视图以满足约束。 因此,您可以创建一个约束的IBOutlet并在代码中更新它。