swift - selector

selector是什么?
个人理解是一个可以方便遍历编写好的所有函数
实例
class MyObject: NSObject {

func callMe() {
    //...
}

func callMeWithParam(_ obj: AnyObject!) {
    //...
}

func turn(by angle: Int, speed: Float) {
    //...
}

func selectors() -> [Selector] {
    let someMethod = #selector(callMe)
    let anotherMethod = #selector(callMeWithParam(_:))
    let method = #selector(turn(by:speed:))

    return [someMethod, anotherMethod, method]
}

func otherSelectors() -> [Selector] {
    let someMethod = #selector(callMe)
    let anotherMethod = #selector(callMeWithParam)
    let method = #selector(turn)
    
    return [someMethod, anotherMethod, method]
}
func commonFunc() {
    
}
func commonFunc(_ input: Int) -> Int {
    return input
}
func sameNameSelectors() -> [Selector] {
    let method1 = #selector(commonFunc as ()->())
    let method2 = #selector(commonFunc as (Int)->Int)
    return [method1, method2]
}

}
let selectors = MyObject().selectors()
print(selectors)

let otherSelectors = MyObject().otherSelectors()
print(otherSelectors)

let sameNameSelectors = MyObject().sameNameSelectors()
print(sameNameSelectors)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容