我正在设置一个按钮,可以从视图中心移动到角落,并想知道如何在旋转设备后让它停留在那里。我嘲笑了一个非常简单的应用来展示这个问题。以下是示例故事板:
约束被添加到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()
}
}
}
从中心到角落的动画效果很好。但是,如果我在将按钮发送到角落后旋转设备,它将返回到中心。我的问题是:如何通过动画将按钮永久发送到角落?或者更一般地说,如何通过设备轮换为约束设置动画并使约束活动状态永久化。