您好我对iOS应用程序的编程非常新,并且遇到过这个问题。如果是重复,我很抱歉。我已经彻底搜索过并且已经(尝试)阅读了这个问题的所有相关主题,但到目前为止还没有修复过。
我正在尝试制作一个标签,当按下时更改为其他内容。标签在另一个类中创建,并放在视图中。此外,我试图这样做,而不在它后面放一个按钮。这是代码。
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var mountainImage: UIImageView!
@IBOutlet weak var mphView: Speed!
override func viewDidLoad() {
super.viewDidLoad()
setImage()
mphView.backgroundColor = UIColor(white: 0.2, alpha: 0.5)
mphView.layer.borderColor = UIColor(red: 222, green: 222, blue: 222, alpha: 1).CGColor
mphView.layer.borderWidth = 1
// Do any additional setup after loading the view, typically from a nib.
let touchSpeedLabel = UITapGestureRecognizer(target: self, action: "speedLabelTouched")
mphView.addGestureRecognizer(touchSpeedLabel)
mphView.userInteractionEnabled = true
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func setImage(){
}
func speedLabelTouched(sender : UITapGestureRecognizer){
print("Lol this worked")
}
}
当我按下标签时,应用程序崩溃时出现此错误:
speedLabelTouched]:无法识别的选择器发送到实例0x157d838c0 ***由于未捕获的异常终止应用程序' NSInvalidArgumentException',原因:'无法识别的选择器发送到实例0x157d838c0'
提前感谢您的帮助!
答案 0 :(得分:1)
你告诉它使用一个名为“speedLabelTouched”的方法(没有参数),但你已经实现了一个名为“speedLabelTouched:”的方法(一个参数)。
相当合理的是,找不到无参数版本。