日常问题

2017.05.17
问题:可以同时点击多个按钮,有时候会造成业务上的问题
解决:适配8.0+, 使用category + RunTime 的方法实现整个app所有的Button exclusiveTouch 的统一设置。也可以全局配置 [[UIButton appearance] setExclusiveTouch:YES];文件地址

2018.08.23
问题:调用tableView 的 reloadData 会 导致crash ,log 输出 "tableView:didEndDisplayingCell:forRowAtIndexPath:]: unrecognized selector"
解决:公司接入GrowingIO 埋点,GrowingIO内部对tableview 的 reloadData 进行了setAssociated(代码闭源的,只能这样猜测),这种情况一般不会出现问题,但是工程代码中,却因为业务原因给self 通过runtime 方式添加了属性,并在调用 [self.tableView reloadData] 前调用了,objc_removeAssociatedObjects(self);该方法,会移除所有跟self 相关的Associated,把GrowingIO 的 Associated 一并去除,导致,GrowingIO 找不到要执行的函数,从而导致crash,并输出 "xxx unrecognized selector" error log;

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

推荐阅读更多精彩内容

  • 总结一些遇到的问题。日常工作中用到的一些方法总结,有很简单介绍,可能也有错误,如果您看到了希望可以告诉我,会不间断...
    最后还是个农阅读 1,682评论 4 7
  • 1.presentViewController和pushViewController区别:presentViewC...
    木子尚武阅读 283评论 0 1
  • 一、iOS11适配问题 1、导航栏问题自定义titleViewiOS11在自定义View上实现: 同样添加导航栏按...
    向晚forever阅读 512评论 0 0
  • 会导致整个页面布局产生问题,会计算导航栏的高度self.navigationController.navigati...
    BigBossZhu阅读 97评论 0 0
  • viewPager简介: 通过活动切换展示view的效果。 在v4包里面(android.support.v4.v...
    JokerHerry阅读 431评论 0 0