升级iOS10之后项目字体显示不全之 Label

2017-01-10  本文已影响146人  丶逝水流年

简介:主要的思路是获取手机系统版本号,如果是10以上的版本那么就做相应的处理,这里是做label写了一个分类,如果用户手机的版本大于等于 10  那么字体都-0.5

如有疑问:请加群:246807516  此乃活跃群,进群不改备注者,秒提,不经常发言者,按时清人,自己看情况加群,拒绝死人,谢谢合作

.h里一个方法+属性

#import@interface UILabel (FitFont)

@property (nonatomic, assign) BOOL change;

- (void)fitFontSize;

@end

.m里一定要引入runtime头文件哦#import <objc/runtime>

@implementation UILabel (FitFont)

static char *UILabelChangeKey = "UILabelChangeKey";

- (void)setChange:(BOOL)change {

objc_setAssociatedObject(self, UILabelChangeKey, @(change), OBJC_ASSOCIATION_ASSIGN);

}

-(BOOL)change{

return objc_getAssociatedObject(self, UILabelChangeKey);

}

- (instancetype)init{

self = [super init];

if (self) {

[self fitFontSize];

}return self;}

- (void)fitFontSize{

//    self.font =[UIFont preferredFontForTextStyle: UIFontTextStyleHeadline];

if ([kSystemVersion floatValue] >= 10) {//iPhone系统版本是10 所有的字体变小

if(!self.change) {

CGFloat fonts = self.font.pointSize;

fonts -= 0.5;

NSString *fontN = self.font.fontName;

self.font = [UIFont fontWithName:fontN size:fonts];

NSLog(@" label的大小 == %f", self.font.pointSize);

self.change = YES;

}

}

}

上一篇下一篇

猜你喜欢

热点阅读