手机系统字体设置成粗体的时候UIButton有图片+文字的时候文字显示不全

iOS13 及以后的版本中,当用户在手机设置中,将字体设置为加粗后,会导致我们的图片+文字按钮出现显示问题,文字显示不全。

self.allBtn.titleLabel.lineBreakMode=NSLineBreakByClipping;

设置titleLabel的剪切模式即可


//另一种方式,写一个TJUIButton继承UIButton,然后使用TJUIButton

@interface TJUIButton : UIButton

@end

@implementation TJUIButton

-(instancetype)initWithCoder:(NSCoder *)coder{

    if(self = [super initWithCoder:coder]){

        [self fixBoldTextBug];

    }

    return self;

}

- (void)setImage:(UIImage *)image forState:(UIControlState)state{

    UIImage * fiximage = [image resizableImageWithCapInsets:UIEdgeInsetsZero resizingMode:UIImageResizingModeTile];

    [super setImage:fiximage forState:state];

}

- (void)fixBoldTextBug{

    UIImage * normalImage = [ self imageForState:UIControlStateNormal];

    if(normalImage){

        UIImage * norImageResize = [normalImage resizableImageWithCapInsets:UIEdgeInsetsZero resizingMode:UIImageResizingModeTile];

        [self setImage:norImageResize forState:UIControlStateNormal];

    }

}

@end

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

推荐阅读更多精彩内容