iOS在旋转期间维护约束活动状态

时间:2017-10-13 17:15:29

标签: ios swift

我正在设置一个按钮,可以从视图中心移动到角落,并想知道如何在旋转设备后让它停留在那里。我嘲笑了一个非常简单的应用来展示这个问题。以下是示例故事板:

example storyboard

约束被添加到ViewController中的相应IBOutletCollection中,Button动作链接到示例ViewController中的IBAction sendToCorner:

import UIKit

class ViewController: UIViewController {
    @IBOutlet var centerConstraints: [NSLayoutConstraint]!
    @IBOutlet var cornerConstraints: [NSLayoutConstraint]!

    @IBAction func sendToCorner() {
        NSLayoutConstraint.deactivate(centerConstraints)
        NSLayoutConstraint.activate(cornerConstraints)
        UIView.animate(withDuration: 0.5) {
            self.view.layoutIfNeeded()
        }
    }
}

从中心到角落的动画效果很好。但是,如果我在将按钮发送到角落后旋转设备,它将返回到中心。我的问题是:如何通过动画将按钮永久发送到角落?或者更一般地说,如何通过设备轮换为约束设置动画并使约束活动状态永久化。

0 个答案:

没有答案