假设您希望每次UIPinchGestureRecognizer识别捏合手势时调用函数doPinch
。这可以通过以下方式完成:
override func viewDidLoad() {
super.viewDidLoad()
let pinchGesture = UIPinchGestureRecognizer(target: self, action: "doPinch:")
}
func doPinch(gesture: UIPinchGestureRecognizer) {
// do something
}
前者工作正常,但如果我重构doPinch
的名称或者如果我在UIPinchGestureRecognizer构造函数中拼错动作名称,该怎么办?这样编译工作正常,但我会收到运行时错误。这很糟糕,因为必须能够在编译时检查方法名称拼写是否正确。
第二个例子:
如果您从资产目录中引用图像,我必须像这样引用它:
let image = UIImage(named: "yosemite-meadows")
同样,它编译的问题相同,但如果图像名称有拼写错误,我会收到运行时错误。
如何在编译时而不是在运行时检测到拼写错误?
答案 0 :(得分:0)
http://www.cimgf.com/2013/01/29/down-with-magic-strings/#more-2009