前端之家收集整理的这篇文章主要介绍了
Swift学习之每日一tip (1)Selector,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
技巧:
@H_
403_3@在Swift中,我们可以通过
字符串赋值
的方式完成Selector的创建。原因在于Selector类型实现了StringLiteralConvertible
方法。
注意:
@H_
403_3@selector 其实是 Objective-C runtime 的概念,如果你的 selector 对应的
方法只在 Swift 中可见的话 (也就是说它是一个 Swift 中的 private
方法),在
调用这个 selector 时你会遇到一个 unrecognized selector
错误
“正确的做法是在 private 前面加上 @objc 关键字,这样运行时就能找到对应的方法了。”
约定:
@H_
403_3@“如果
方法的第一个参数有外部变量的话,在通过字符串
生成 Selector 时还有一个约定,那就是在
方法名和第一个外部参数之间
加上 with:”
栗子(^_^):func aMethod(external paramName: AnyObject!){…}
想获取对应的selector,应该这么写
let s = Selector(“aMethodWithExternal”)