Ich habe benutzerdefinierte Schaltflächenklasse erstellt und überschreiben alle Berührungsmethoden. Es funktioniert gut in swift 2
und Xcode 7.3.1
. Aber wenn ich in Xcode 8.0
gleiche App öffnen, wird es Fehler zeigen:Wert des Typs 'CustomButton' hat kein Mitglied 'touchDown'
Wert vom Typ ‚Custombutton‘ Nein ‚Touchdown‘ Mitglied hat
Wert vom Typ ‚Custombutton‘ hat kein Mitglied ‚touchUpInside‘
Werte vom Typ ‚Custombutton‘ haben kein Mitglied ‚touchDragExit‘
Werte vom Typ ‚Custombutton‘ hat kein Mitglied
Werte vom Typ ‚touchDragEnter‘ ‚Custom Button‘hat kein Mitglied 'touchcancel'
Hier ist mein Code:
import UIKit
@IBDesignable
@objc public class CustomButton: UIButton {
private func addTargets() {
//------ add target -------
self.addTarget(self, action: #selector(self.touchDown(_:)), for: UIControlEvents.TouchDown)
self.addTarget(self, action: #selector(self.touchUpInside(_:)), for: UIControlEvents.TouchUpInside)
self.addTarget(self, action: #selector(self.touchDragExit(_:)), for: UIControlEvents.TouchDragExit)
self.addTarget(self, action: #selector(self.touchDragEnter(_:)), for: UIControlEvents.TouchDragEnter)
self.addTarget(self, action: #selector(self.touchCancel(_:)), for: UIControlEvents.TouchCancel)
}
func touchDown(sender: CustomButton) {
self.layer.opacity = 0.4
}
func touchUpInside(sender: CustomButton) {
self.layer.opacity = 1.0
}
func touchDragExit(sender: CustomButton) {
self.layer.opacity = 1.0
}
func touchDragEnter(sender: CustomButton) {
self.layer.opacity = 0.4
}
func touchCancel(sender: CustomButton) {
self.layer.opacity = 1.0
}
}
Wenn jemand eine Lösung haben, lassen Sie es mich wissen.
Danke .... Es funktioniert ... – VRAwesome