1
我有一个按钮数组,并且在程序开始时我希望用户选择一个按钮,然后它将更改其背景。 我写了一个switch语句,但我不知道我怎么能落实到override func viewDidLoad()
,即,我不知道我应该怎么写作为参数,而不是UIButton的具有参数的SWIFT函数viewDidLoad
class ViewController: UIViewController {
@IBOutlet var cardsArray: Array<UIButton> = []
override func viewDidLoad() {
super.viewDidLoad()
self.playerMove(sender: UIButton)
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func playerMove(sender: UIButton) {
switch (sender) {
case self.cardsArray[0]:
self.cardPressedAll(0)
case self.cardsArray[1]:
self.cardPressedAll(1)
case self.cardsArray[2]:
self.cardPressedAll(2)
default: break
}
}
func cardPressedAll (cardNumber: Int) {
self.cardsArray[cardNumber].enabled = false
self.cardsArray[cardNumber].setBackgroundImage(UIImage(named: "cross"), forState: UIControlState.Normal)
}
}
太简单了!谢谢。那么你能告诉我什么是viewDidLoad类吗? iOS开发者库对我来说没有足够的解释。 – Dandy 2014-12-07 19:14:47
viewDidLoad是UIViewController中的一个方法,当viewcontrollers视图加载完成时会触发它。您通常使用该方法执行所有设置。 – matteok 2014-12-07 19:27:39
你的回答帮了我很大的忙,其实我又遇到了同样的问题:我不知道如何使用我的IBAction playerMove在一个主要函数中播放。它应该看起来像:'FUNC播放(){ self.playerMove(UIButton的) self.autoMove() }' – Dandy 2014-12-07 19:31:39