我有两个 UITextFields 并且想在单击按钮时交换它们的位置。也许也动画交换。
IE。:
textFieldOne 和 textFieldOne 使用界面生成器通过 AutoLayout 定位。
单击按钮时
最佳答案
要简单地交换 UITextField
的位置,您可以将它们的 origin
值相互分配。
// Store textFieldOne's postition
let tempPos : CGPoint = textFieldOne.frame.origin
UIView.beginAnimations(nil, context: nil)
// Set textFieldOne to textFieldTwo's position
textFieldOne.frame.origin = textFieldTwo.frame.origin
// Set textFieldTwo to textFieldOne's original position
textFieldTwo.frame.origin = tempPos
UIView.commitAnimations()
或者,对于更 Swift 的处理方式,您可以使用 Tuple 来交换值,而无需任何临时变量。
UIView.beginAnimations(nil, context: nil)
(textFieldOne.frame.origin, textFieldTwo.frame.origin) = (textFieldTwo.frame.origin, textFieldOne.frame.origin)
UIView.commitAnimations()
关于ios - 如何在屏幕上交换文本字段的位置 - Swift,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30417992/