Менять кадр кнопки с помощью arc4random?
У меня есть UIButton. Я хочу, чтобы он генерировал в случайных местах на экране. Он не возвращает ошибок и работает, но на экране ничего не отображается. Я попытался жестко кодировать значения, и это работает. Я использую Swift.
КОД:
import UIKit
class ViewController: UIViewController {
let changingPoint = UIButton()
let dot = UIImage(named: "sponsor-dot.png")
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
changingPoint.setImage(dot, forState: .Normal)
changingPoint.addTarget(self, action: "pointPressed:", forControlEvents: .TouchUpInside)
changingPoint.frame = CGRectMake(CGFloat(arc4random()%(320)), CGFloat(arc4random()%(568)), 150, 150)
self.view.addSubview(changingPoint)
}
func pointPressed(sender: UIButton!) {
changingPoint.frame = CGRectMake(CGFloat(arc4random()%(320)), CGFloat(arc4random()%(568)), 150, 150)
println()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
2 ответа
Полагаю, что вы не установили цвет фона для кнопки.
changingPoint.backgroundColor = UIColor.blackColor() //or any other color that you want
Я не думаю, что ваше изображение загружается правильно. Попробуйте напечатать точку, чтобы увидеть, является ли она нулевой:
println("image: \(dot)")