无法识别的选择器发送到实例,UISlider swfit3
unrecognized selector sent to instance , UISlider swfit3
我正在使用 UISlider,我想识别值的变化:
var sliderGeofence: UISlider!
在我的 viewDidLoad()
里面:
self.sliderGeofence = UISlider(frame: CGRect(x: 20, y: 20, width: self.view.frame.size.width - 50, height: 50))
self.sliderGeofence?.maximumValue = 100000
self.sliderGeofence?.minimumValue = 500
self.sliderGeofence?.value = 100
self.sliderGeofence?.isUserInteractionEnabled=true
self.sliderGeofence?.addTarget(self, action: Selector("geofenceValueChange:"),for: UIControlEvents.valueChanged)
gmsMap.addSubview(self.sliderGeofence!)
sliderGeofence?.isHidden = true
我的改值方法:
@IBAction func geofenceValueChange(sender: AnyObject)
{
print("entro")
}
应用程序加载滑块,但是,当我更改其值时,会发生这种情况:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MocaAdmin.FirstViewController
geofenceValueChange:]: unrecognized selector sent to instance
0x7fca61511480'
我做错了什么?
您应该像这样使用选择器:
self.sliderGeofence?.addTarget(self, action: #selector(FirstViewController.geofenceValueChange(_:)), for: .valueChanged)
这样,Xcode 甚至会建议要使用的功能并自动完成您的输入,以确保一切正常。
希望对您有所帮助!
将目标更改为以下内容:
sliderDemo.addTarget(self, action: #selector(geofenceValueChange(_:)), for: .valueChanged)
然后函数为:
func geofenceValueChange(_ sender:UISlider) {
print("entro")
}
函数中不需要@IBAction
。
我正在使用 UISlider,我想识别值的变化:
var sliderGeofence: UISlider!
在我的 viewDidLoad()
里面:
self.sliderGeofence = UISlider(frame: CGRect(x: 20, y: 20, width: self.view.frame.size.width - 50, height: 50))
self.sliderGeofence?.maximumValue = 100000
self.sliderGeofence?.minimumValue = 500
self.sliderGeofence?.value = 100
self.sliderGeofence?.isUserInteractionEnabled=true
self.sliderGeofence?.addTarget(self, action: Selector("geofenceValueChange:"),for: UIControlEvents.valueChanged)
gmsMap.addSubview(self.sliderGeofence!)
sliderGeofence?.isHidden = true
我的改值方法:
@IBAction func geofenceValueChange(sender: AnyObject)
{
print("entro")
}
应用程序加载滑块,但是,当我更改其值时,会发生这种情况:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MocaAdmin.FirstViewController geofenceValueChange:]: unrecognized selector sent to instance 0x7fca61511480'
我做错了什么?
您应该像这样使用选择器:
self.sliderGeofence?.addTarget(self, action: #selector(FirstViewController.geofenceValueChange(_:)), for: .valueChanged)
这样,Xcode 甚至会建议要使用的功能并自动完成您的输入,以确保一切正常。
希望对您有所帮助!
将目标更改为以下内容:
sliderDemo.addTarget(self, action: #selector(geofenceValueChange(_:)), for: .valueChanged)
然后函数为:
func geofenceValueChange(_ sender:UISlider) {
print("entro")
}
函数中不需要@IBAction
。