Я создал собственный класс кнопок и переопределяю все методы касания. Он отлично работает в swift 2
и Xcode 7.3.1
. Но когда я открываю же приложение в Xcode 8.0
, он будет показывать ошибки:Значение типа 'CustomButton' не имеет контакта 'touchDown'
Значение типа «CustomButton» имеет «приземление» ни один член
Значение типа «CustomButton» не имеет ни одного члена «touchUpInside»
Значение типа «CustomButton» не имеет члена «touchDragExit»
Значения типа «CustomButton» не имеет ни одного члена «» touchDragEnter
Значения типа «Пользовательские Кнопка»не имеет ни одного члена„“touchCancel
Вот мой код:
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
}
}
Если кто-нибудь есть какие-либо решения, пожалуйста, дайте мне знать.
Спасибо .... Она работает ... – VRAwesome