手機系統(tǒng)字體設(shè)置成粗體的時候UIButton有圖片+文字的時候文字顯示不全

iOS13 及以后的版本中,當(dāng)用戶在手機設(shè)置中,將字體設(shè)置為加粗后,會導(dǎo)致我們的圖片+文字按鈕出現(xiàn)顯示問題,文字顯示不全。

self.allBtn.titleLabel.lineBreakMode=NSLineBreakByClipping;

設(shè)置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

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容