简介:主要的思路是获取手机系统版本号,如果是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;
}
}
}
网友评论