Runtime运行时机制非常好用的一个用处是一键全局更换应用的字体。
工具/原料
1
Xcode
2
Mac
方法/步骤
1
基于Runtime运行时机制的交换方法实现,首先在工程中新建一个Category继承于UILabel命名为FontCategory,如下:
2
在新建类UILabel+FontCategory.m中导入恩伐荡#import
3
在UILabel+FontCategory.m中实现+ (void)load;方法,load方法是在main函数调用之前被OC运行时所调用的钩子方法,同时最重要的一点是每个类的load方法都只会调用一次,所以我们在load方法里面实现具体的方法畜菊交换,具体实现如下:
4
具体的自定义交换方法实现如下,在交换方法里面实现font的更改,字体名称使用指定的字体库中的即可,如下:
5
通常我们在使用过程中可能会出现某个label的文本不需要更改字体的情况,这个时候需要我们对此进行特殊处理,使用Tag标识的方法来进行判断然后处理,例如我们可以将不需要更改的label文本的tag设置为10000,在使用运行时交换时遇此tag不进行字体更改,具体实现如下:
上一篇:python 函数和方法
下一篇:iphone怎么修改锁屏字体