#iOS知识小集#「 UIButton 在粗体文本下的系统 bug 」

UIButton 相信大家是非常熟悉了,但是不知道大家有没有遇到这样的问题。button 同时设置了图片和文字(代码如图1所示)

然后把系统【设置】->【辅助功能】->【粗体文本】开关打开,手机会自动重启。再去查看这个 button 的时候,你会发现文字和图片发生了重叠,类似图2所示。

坑爹的发现,文字和图片叠在一起了,当时测试反馈的时候一脸懵逼,然后仔细检查代码,没啥毛病。最终找到了一种可行的解决方案,但是会稍微有点复杂。需要写一个 UIButton 的子类,代码如图3所示。

使用这个类替换掉 UIButton 之后,粗体模式下也一切正常了,这里只是做了一个小小的 trick,为了解决这个系统 bug。但是为啥能生效的原因不太清楚,如果有知道产生这个问题的真正原因和正确解决姿势的小伙伴欢迎分享。如果你也遇到了这个问题,可以暂时先用这种方式规避。
展开
知识小集于2019-05-22 05:07发布的图片
知识小集于2019-05-22 05:07发布的图片
知识小集于2019-05-22 05:07发布的图片
评论