2016-01-19 37 views
0

我正在創建一個自定義按鈕(幾乎)工作正常。當按鈕被按下時,它應該改變它的圖像,當鬆動時它會再次變回。問題是,它開始工作前需要一次點擊。更改圖像的按鈕水龍頭UIButton

@IBOutlet weak var myButton: UIButton! 

@IBAction func myButton(sender: UIButton) { 

     myButton.setImage(UIImage(named: "myImage.png")!, forState: .Normal) 
     myButton.setImage(UIImage(named: "myImagePressed.png")!, forState: .Highlighted) 
     myButton.setImage(UIImage(named: "myImagePressed.png")!, forState: .Selected) 

    } 
+1

您必須將'setImage ...'-code放在'viewDidLoad'中,或者根本不使用代碼,而是使用InterfaceBuilder。 – luk2302

回答

0

由於您已將代碼放入IBAction,只有按下該按鈕後纔會執行該代碼。每次按下按鈕時也會調用它。您需要在按下按鈕之前運行該代碼。最好的地方可能是viewController的viewDidLoad(),它控制着按鈕是其一部分的視圖。