iOS11下关于runtime的的一点问题(tableview按钮点击失效)

在iOS11以下时通过在项目中使用过tableview 的侧滑删除功能,实现tableview的三个代理方法就可以了。

但是在iOS11以后,发现项目中的tableview在实现侧滑删除功能上存在点击没反应的情况,当时查询了iOS11的UIkit更新,以及查询了网上各种内容的却没有发现相似的情况。于是单独写了一个demo进行观察,发现在该demo中不存在项目的问题。

排除系统问题后确定问题根源出在项目工程内,开始排查tableview实现方法,代理。最后发现问题的根源是runtime机制。

当时项目需求,使用runtime为uibutton写了一个分类,参考了网上的源码,实现了使用runtime消除Uibutton的重复点击机制(该代码 百度搜索一下有很多)。问题就出在这里:

该runtime机制下,通过断点发现点击侧滑删除按钮后程序进入

1.jpg

在iOS 10 和iOS 11下面通过断点发现两者执行的是同样的代码步骤,但是在iOS10以下点击侧滑删除有效而点击iOS11下的侧滑删除就导致无效,有碰到一样问题的大佬可以帮忙解释以下原理吗?谢谢哈


之前忘记更新了,目前该问题已经解决。

原因在于defaultinterval的值问题,跟runtime的写法有关系,不需要注销runtime,只要将这个defaultinterval的值修改为0即可完美解决这个bug。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 15,608评论 4 61
  • 亲爱的葳葳: 好几天妈妈都在给自己写情书定目标,看似无暇管你。但妈妈知道临近考试前你的数学还有些思路上的小混乱,爸...
    毕丹丹阅读 204评论 0 2
  • 文艺Y阅读 358评论 0 5
  • 临近春节,昨天一个朋友伟达打电话给我,叫我陪他去他女朋友家里拜年。 伟达和他女朋友是工作时候认识的。 伟达的性格比...
    德荣说说阅读 213评论 0 0
  • 经历过一番热闹,匆匆离开,亲情终究是要别离,相聚时短,各自安好。 要知道生活的本质是结束和平淡,那么过程中尽是美好...
    宛若星宸阅读 149评论 0 0

友情链接更多精彩内容