Swift 3 中 Selector字符串定义被改为了#selector()

segmentedControl.addTarget(self, action: "mapTypeChanged:", for: .valueChanged)

旧的selector是字符串,如果粗心大意写错了这就麻烦了

而在Swift3中苹果为我们提供了#selector()关键字替换了字符串类型的selectors。
这种方式可以让编译器在编译的时候,如果不存在这样的方法名就能直接报出编译错误,代码如下:

segmentedControl.addTarget(self, action: #selector(self.mapTypeChanged(sender:)), for: .valueChanged)

你可能感兴趣的:(Swift 3 中 Selector字符串定义被改为了#selector())