如何在 Flutter 中使用 IconFont ?

我的個(gè)人博客同步更新,閱讀體驗(yàn)會(huì)好一點(diǎn),歡迎訪問。

簡(jiǎn)書:http://www.itdecent.cn/u/762002465748

掘金:https://juejin.im/user/5a3127da5188251c11409f0a

個(gè)人博客:https://wuht.coding.me/

廢話

距離上一次更新博客已經(jīng)半年了,實(shí)在是有點(diǎn)忙,期間還換了了個(gè)工作,很多的事情,但是非常感謝有的網(wǎng)友還跟我聯(lián)系,自己寫的東西還有人覺得有價(jià)值,這感覺挺好的。

2018-06-09_190733.png

正文

2018年2月世界移動(dòng)大會(huì)Google發(fā)布了 Flutter beat1,現(xiàn)在 Flutter 已經(jīng)更新到v0.5.2 了,是時(shí)候?qū)W習(xí)一波了。主要是最近在搞 Weex 被坑的不行了。

Iconfont 的使用自己去看一下文檔了,我就不說了。

目前在 Flutter 中使用圖標(biāo)的幾種方式

內(nèi)置圖標(biāo)

目前在 Flutter 使用圖標(biāo)的話,可以使用 Icons :

  icon: Icon( Icons.home)

內(nèi)置圖標(biāo)還是挺多的,基本上還是夠用的。

fontawesome

除了Icons,還有國外比較流行了 fontawesome 可以使用,已經(jīng)有人做了個(gè)包了,依賴一下font_awesome_flutter這個(gè)包,使用也比較簡(jiǎn)單:

  icon: new Icon(FontAwesomeIcons.gamepad), 

使用圖片

這個(gè)主要就是配置一下 pubspec.yaml里的assets,使用的話跟圖片一樣,缺點(diǎn)就是大小和顏色不太好控制,而且會(huì)增加項(xiàng)目的體積。

iconfont

國內(nèi)用的多,但是還沒有人做 Flutter 的package,所以只能自己搞一下了。

教程開始了

從iconfont網(wǎng)站上下載ttf文件

2018-06-09_184200.png

放到某個(gè)目錄下,比如說 fonts 文件夾下:

project/
  lib/
    ...
  fonts/
    iconfont.ttf
  pubspec.yaml  

配置 pubspec.yaml 下的 fonts:

  fonts:
    - family: iconfont
      fonts:
        - asset: fonts/iconfont.ttf

然后就可以使用了

Icon( IconData(0xe6bb, fontFamily: 'iconfont'),color: Colors.blue,size: 89.0)

0xe6bb 這個(gè)十六進(jìn)制是從這里拿到的:

2018-06-09_185052.png

不同的十六進(jìn)制代表不同的圖標(biāo)。

本來教程到這里就結(jié)束了,但在實(shí)際做的過程中我是有一個(gè)疑問的,就是為啥下面的代碼不可以正常顯示圖標(biāo),而且 字符 x,會(huì)被轉(zhuǎn)換成一個(gè)鍵盤的圖標(biāo),這個(gè)問題之前在vue使用v-text設(shè)置iconfont圖標(biāo)就會(huì)出現(xiàn),但是一直不知道為啥,希望有大佬能評(píng)論區(qū)解答一下。

Text("#0xe7b7;",style: TextStyle(fontFamily: 'iconfont'))// 可以正常換字體,但圖標(biāo)不行

歡迎打賞,關(guān)注,點(diǎn)贊。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容