在開發阿里數據iOS版客戶端的時候,由于項目進度很緊,項目里的所有圖標都是用最平常的背景圖片方案來實現。而為了要兼容普通屏與Retina屏的設備,蘋果要求每個背景圖都要以兩種尺寸存(a.png和a@2x.png),這讓設計師們增加了成本,因為他們每次都得出兩份背景圖標。
現在在web開發上,icon font技術的應用很廣泛,它不僅在解決多分辨率顯示問題上很有成效,而且在使用它的時候還能降低不少設計和開發成本。
那么它能不能應用到ios開發上來呢?帶著這個疑問,我在github上找到了FontasticIcons和ios-fontawesome,但是這兩個OC包對icon資源封裝都有限,而且擴展也不是很方便。
既然能在ios上使用icon font,那么怎么用呢?經過一番摸索,發現使用原理和自定義字體差不多,只有個別操作不太一樣,接下來我給大家詳細介紹一下。
如何使用自定義字體
在講icon font之前,首先先來看看普通自定義字體是如何在ios中使用的,兩個原理是一樣的。這里以KaushanScript-Regular為例:
Step 1: 導入字體文件
將字體文件拖入項目(ios支持的字體格式有:.ttf、.otf,其他格式不確定):
然后再在項目的資源池中確認字體文件是否加入項目,打開xcode項目的Build Phases中查看:
Step 2: 配置.plist文件
UILabel *label5 = [[UILabel alloc] initWithFrame:CGRectMake(10, 480, 300, 50)]; label5.text = @"\U0000e42a\U0000e525\U0000e41c"; [self.view addSubview:label5];
6.效果
7.使用自制圖標字體
如果上面介紹的圖標庫還滿足不了你的需求,或者需要的圖標分布在多個圖標庫而不能集中到一個字體文件中;那么你可能需要自己去制作圖標字體文件了。
總結
這樣,在iOS開發上,不僅可以直接去開源圖標庫找現成的圖標用到項目中,而且還可以輕松地改變圖標的顏色、大小,相信可以解放不少設計師和工程師的工作量。
上代碼
圖標字體庫