使用 iconfont 替換 Assets 裏的圖標資源

我們一般對 App 的體積大小會有一定的要求,一般會先從圖標資源着手。這邊推薦兩個壓縮圖標的網站,不會影響畫質,也不會變形或模糊。

不過今天主要介紹的是iconfont,像使用字體一樣的使用圖標。

先在 阿里巴巴矢量圖標庫 註冊賬號,再按照下圖的步驟將 UI 設計好的圖標下載到本地。
下載完以後,我們會發現文件夾裏包含如下圖文件。我們只需要將iconfont.tff拖入工程中即可。
爲了保證 iconfont.tff 已導入成功,在Target--Build Phases--Bundle Resource 裏檢查一下。
打開info.plist文件,添加Fonts provided by application字段。
如圖一,每個圖標都會對應一個unicode碼和名稱。 這些代碼是&#xXXXX格式的,但是在Xcode中需要轉換成\U0000XXXX格式的。
把之前項目裏的 iconfont 文件整理了一下,iconfont封裝 可直接下載使用。所有的圖標都是用字體來代替,如下。
#define IconfontName(name)  [IconFont iconFontUnicodeWithName:(name)]
#define IconFontSize(value) [IconFont iconFontWithSize:(value)]

UILabel *label = [[UILabel alloc] init];
label.text = IconfontName(@"mine_logout");
label.font = IconFontSize(64);
label.textColor = [UIColor grayColor];
label.textAlignment = NSTextAlignmentCenter;

// 如果是設置 button 的圖標
[btn setTitle:IconfontName(@"chat_voice_normal") forState:(UIControlStateNormal)];
[btn setTitle:IconfontName(@"chat_voice_pressed") forState:(UIControlStateSelected)];

如果後期圖標有更新,只要替換最新的iconfont.tff文件即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章