ios字体大小适配(Category)

来源:互联网 发布:热血江湖人工智能披风 编辑:程序博客网 时间:2024/06/05 02:06

话不多说 直接贴代码

写一个UIFont的分类方法即可:

#import "UIFont+FontFit.h"//按照6s大小来适配#define p [UIScreen mainScreen].bounds.size.width / 375.0@implementation UIFont (FontFit)+ (void)load {    // 获取替换后的类方法    Method newMethod = class_getClassMethod([self class], @selector(adjustFont:));    // 获取替换前的类方法    Method method = class_getClassMethod([self class], @selector(systemFontOfSize:));    // 然后交换类方法,交换两个方法的IMP指针,(IMP代表了方法的具体的实现)    method_exchangeImplementations(newMethod, method);}//注意:在调用此方法时, 方法的指针已经交换:+ (UIFont *)adjustFont:(CGFloat)fontSize {    if (p < 1) {//5s        fontSize = fontSize - 2;    }    else if (p==1) {//6s        //fontSize = fontSize    } else if (p>1) {//6p        fontSize = fontSize + 2;    }    UIFont *newFont = nil;    newFont = [UIFont adjustFont:fontSize];    return newFont;}

//此方法只适应于使用了+ (UIFont *)systemFontOfSize:(CGFloat)fontSize 方法

原创粉丝点击