Swift的几个新特性

  • 方法默认为私有时,对一个对象监听,不能对这个方法进行调用
       closeBtn.addTarget(self, action: "closeBtnClick", forControlEvents: .TouchUpInside)
    
       @objc private func closeBtnClick() {
         dismissViewControllerAnimated(true, completion: nil)
     }
    
  • 当closeBtnClick方法前没有@objc修饰时,监听closeBtn无法调用这个方法:
    • 事件监听的本质:1.将方法包装@SEL 2.去类中的方法列表中找对应的函数 3.执行函数
    • 如果一个方法被声明称private,那么该方法就不会被添加到内的方法列表中
    • 只需要在方法最前面加上@objc,那么该方法依然会被添加到方法列表中
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 5,899评论 0 9
  • 我们常常会听说 Objective-C 是一门动态语言,那么这个「动态」表现在哪呢?我想最主要的表现就是 Obje...
    Ethan_Struggle阅读 6,632评论 0 7
  • 说明:面试题来源是微博@我就叫Sunny怎么了的这篇博文:《招聘一个靠谱的 iOS》,其中共55题,除第一题为纠错...
    __Lex阅读 4,149评论 0 4
  • 参数自一个指针,指向类的要接收消息的实例。 OP在处理该信息的方法的选择。 ......可变参数列表包含参数的方法...
    reallychao阅读 4,280评论 0 0
  • runtime 和 runloop 作为一个程序员进阶是必须的,也是非常重要的, 在面试过程中是经常会被问到的, ...
    SOI阅读 21,989评论 3 63

友情链接更多精彩内容