Перемещение кнопки при нажатии на нее в рандомном порядке


#1

Привет!
Создал кнопку кодом. При нажатии на нее она рандомно меняет положение. Никак не могу сделать так, чтобы она не выходила за рамки экрана. Прошу помощи. Вот код
import UIKit

class ViewController: UIViewController {

let side: CGFloat = 100
var x: CGFloat = 0
var y:CGFloat = 0



override func viewDidLoad() {
    super.viewDidLoad()
    
var myButton = UIButton(frame: CGRect(x: self.x, y: self.y, width: self.side, height: self.side))
    
myButton.backgroundColor = randomColor()
myButton.setTitle("", for: .normal)
myButton.layer.cornerRadius = myButton.frame.size.width/2
myButton.addTarget(self, action: #selector(self.myButtonAction), for: .touchUpInside)
myButton.center = self.view.center
self.view.addSubview(myButton)

}

func randomColor() -> UIColor{
        let r = CGFloat(arc4random()) / CGFloat(UINT32_MAX)
        let g = CGFloat(arc4random()) / CGFloat(UINT32_MAX)
        let b = CGFloat(arc4random()) / CGFloat(UINT32_MAX)
        return UIColor(red: r, green: g, blue: b, alpha: 1.0)
}

@IBAction func myButtonAction (sender: UIButton)
{
  
let randomWidth = CGFloat(arc4random_uniform(UInt32(self.view.frame.width)))
let randomHeight = CGFloat(arc4random_uniform(UInt32(self.view.frame.height)))
sender.center = CGPoint(x: randomWidth, y: randomHeight)
  
}

}