如何将按钮移动到随机位置?(迅速)

per*_*rte 2 xcode uikit ios swift

我正在为 iPhone 创建一个非常简单的应用程序。

只是不知道如何使按钮(图像)在 Swift 中被触摸时移动到随机位置(但在屏幕上)。

我正在使用 Xcode 6。

vac*_*ama 5

将此用于@IBAction您的按钮:

@IBAction func moveButton(button: UIButton) {
    // Find the button's width and height
    let buttonWidth = button.frame.width
    let buttonHeight = button.frame.height

    // Find the width and height of the enclosing view
    let viewWidth = button.superview!.bounds.width
    let viewHeight = button.superview!.bounds.height

    // Compute width and height of the area to contain the button's center
    let xwidth = viewWidth - buttonWidth
    let yheight = viewHeight - buttonHeight

    // Generate a random x and y offset
    let xoffset = CGFloat(arc4random_uniform(UInt32(xwidth)))
    let yoffset = CGFloat(arc4random_uniform(UInt32(yheight)))

    // Offset the button's center by the random offsets.
    button.center.x = xoffset + buttonWidth / 2
    button.center.y = yoffset + buttonHeight / 2
}
Run Code Online (Sandbox Code Playgroud)

警告:如果您启用了 AutoLayout,则在布局子视图时,您的按钮可能会弹回其原始位置。请在此处查看此问题的解决方案。