2017-06-16 86 views
0
addButton = UIButton(type: .custom) 
    addButton.setTitle("add", for: .normal) 
    addButton.setTitle("tapped", for: .highlighted) 
    addButton.titleLabel?.font = UIFont.systemFont(ofSize: 12) 
    addButton.backgroundColor = UIColor.lightGray 
    addButton.translatesAutoresizingMaskIntoConstraints = false 
    addButton.addTarget(self, action: #selector(dosome(_:)), for: .touchUpInside) 
    let bottom_button: NSLayoutConstraint = NSLayoutConstraint(item: addButton, attribute: NSLayoutAttribute.bottom, relatedBy:NSLayoutRelation.equal, toItem:mainView, attribute:NSLayoutAttribute.bottom, multiplier:1.0, constant: -10) 
    let right_button: NSLayoutConstraint = NSLayoutConstraint(item: addButton, attribute: NSLayoutAttribute.right, relatedBy:NSLayoutRelation.equal, toItem:mainView, attribute:NSLayoutAttribute.right, multiplier:1.0, constant: -20) 
    let height_button: NSLayoutConstraint = NSLayoutConstraint(item: addButton, attribute: NSLayoutAttribute.height, relatedBy:NSLayoutRelation.equal, toItem:nil, attribute:.notAnAttribute, multiplier:1.0, constant: 20) 
    let width_button: NSLayoutConstraint = NSLayoutConstraint(item: addButton, attribute: NSLayoutAttribute.width, relatedBy:NSLayoutRelation.equal, toItem:nil, attribute:.notAnAttribute, multiplier:1.0, constant: 35) 
    addButton.addConstraint(height_button) 
    addButton.addConstraint(width_button) 
    mainView.addSubview(addButton) 
    mainView.addConstraint(bottom_button) 
    mainView.addConstraint(right_button) 

@IBAction func dosome(_ sender: UIButton) { 
    print("tttttt") 
} 

點擊時,按鈕的文本將變爲突出顯示的標題而不動​​作。任何人都可以指出什麼是錯的?在沒有迴應的情況下在UIButton上快速點擊

+0

MainView是一個顯示在彈出窗口中的UIView。 isUserInteractionEnabled的Button和它的超級視圖返回true。 – uuuy1798

回答

0

使用addButton.isHighlighted = false它會起作用。

+0

感謝您的幫助。但它仍然沒有工作。 defalut .isHighlighted是虛假的 – uuuy1798

+0

@uuuy1798顯示屏幕截圖.. –

+1

謝謝。我已經解決了導致破壞對象的問題。 – uuuy1798

0

試試這個,addButton = UIButton(type: .system)並設置theButton.adjustsImageWhenHighlighted = false;

+0

謝謝。我終於發現上面的代碼沒有錯。因爲它不包含對象,所以無法到達該功能。 – uuuy1798

0

我只是嘗試了這一點,它工作正常。刪除了約束條件,您可以根據您的要求添加這些約束條件。確保在這個addButton之上沒有tapGesture或userInteractionEnabled視圖,這會導致您的IBAction方法不被調用。

 let addButton = UIButton(type: .custom) 
     addButton.setTitle("add", for: .normal) 
     addButton.setTitle("tapped", for: .highlighted) 
     addButton.titleLabel?.font = UIFont.systemFont(ofSize: 12) 
     addButton.backgroundColor = UIColor.lightGray 
     addButton.translatesAutoresizingMaskIntoConstraints = false 
     addButton.addTarget(self, action: #selector(self.dosome(_:)), for: .touchUpInside) 

     self.view.addSubview(addButton) 


     func dosome(_ sender: UIButton) { 
     print("tttttt") 
     } 
+0

謝謝。我終於發現上面的代碼沒有錯。因爲它不包含對象,所以無法到達該功能。 – uuuy1798

相關問題