动画:元素的停止重置位置(swift)
我正在尝试动画,但我面临一个大问题:当我的动画完成后,我做了一些事情(触摸屏幕等),元素会将它们的位置重置为它们的第一个位置。 我发现这个:[博客]: 他们说这是因为元素有约束或自动布局,所以关闭它来修复它,但我不想关闭它。 我们可以通过编程方式更新约束吗? 还有其他解决办法吗 这是我的动画:动画:元素的停止重置位置(swift),swift,animation,Swift,Animation,我正在尝试动画,但我面临一个大问题:当我的动画完成后,我做了一些事情(触摸屏幕等),元素会将它们的位置重置为它们的第一个位置。 我发现这个:[博客]: 他们说这是因为元素有约束或自动布局,所以关闭它来修复它,但我不想关闭它。 我们可以通过编程方式更新约束吗? 还有其他解决办法吗 这是我的动画: @IBOutlet var tfUser: UITextfiled! override func viewDidLoad() { super.viewDidLoad() } overrid
@IBOutlet var tfUser: UITextfiled!
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
tfUser.center.x += view.bounds.width
}
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
UIView.animateWithDuration(2, delay: 1.8, options: [.CurveEaseInOut], animations: {
self.tfUser.center.x += self.view.bounds.width
//self.tfUser.frame = CGRectMake(0, 233, 375 , 89)
// i tried CGRectMake but it delete the animation
}, completion: nil)
}
在评论我的问题时,@Hardik Shekhat告诉我们使用:
self.tfUser.translatesAutoresizingMaskIntoConstraints = true
这对我有用 使用UIView的TranslatesAutoResizengMaskinToConstraints属性。像这样
self.tfUser.translatesAutoresizingMaskIntoConstraints=false代码>非常感谢,这很有效!!