Android多分辨率適配實踐【0】基礎適配篇(撰寫中)
Android多分辨率適配實踐【1】使用字體圖標,精準控制不一樣分辨率的圖標樣式(內含兩枚神器)
Android多分辨率適配實踐【2】Iconify中文使用說明
Android多分辨率適配實踐【3】Iconify擴展,自制或導入SVG字體圖標庫(撰寫中)
...
大約每週一篇的頻率更新,算是學習實踐筆記,喜歡請關注哦。html
一個優秀的開發者應該會很討厭浪費時間在瑣碎的事情上,好比爲APP中的每一個圖標都製做並拷貝5種 (ldpi, mdpi, hdpi, xhdpi, xxhdpi) 尺寸的圖片, 並把它們正確地放到5個不一樣的drawable目錄,而且在想要改變顏色或者大小的時候從新重複這煩人的一切。並且在須要他們縮放的時候,一不留神圖像就糊掉。
實際上在網頁前端這個行當裏面早就面臨過相似的問題而且頭疼過好久,考慮過很多方法(大圖CSS縮小顯示、類Android思路的多套圖標適配、SVG矢量等)。通過他們實踐出來了一種比較好的解決方案——圖標字體化。在Android開發裏面,也是徹底適合採用這種方案的!
甚至除了減小文件體積和可輕易縮放外,字體圖標還帶來了額外的優勢——前端
輕易改變顏色android
輕易產生陰影編程
動畫支持架構
字體圖標是以字體的形式存在的,因此使用字體圖標的第一步是先要找到這些字體,在後面我會提到去哪找甚至怎麼本身製做。這裏先關注如何使用。在Android上使用字體圖標原本是不如網頁方便的,但咱們有神器——學習
Iconify是一個讓你在文本、ActionBar, 以及 EditTexts中輕易使用圖標字體的開源庫,並自帶了海量字體圖標合集(前端經常使用的FontAwesome, Entypo, Typicons等圖標全都集成進去了)。上個月剛發佈v2版,做者給v2版寫的更新介紹Iconify just got a lot better自己就是最好的使用教程。或者看這篇多是最好的中文說明(撰寫中,喜歡請關注)。
它容許這樣的編程:字體
<IconTextView android:text="Welcome {fa-smile-o} {fa-hand-peace-o} !" android:shadowColor="#22000000" android:shadowDx="0" android:shadowDy="5" android:shadowRadius="1" android:textSize="30sp" android:textColor="#2A9BDA" ... />
IconTextView會將全部的{..}替換爲對應的圖標。這些圖標的特性跟字體/Text是如出一轍的,你能夠控制它的顏色,大小,陰影。並且不管多大,都不會糊掉!上面的代碼{fa-smile-o}等是來自FontAwesome的圖標,你還能夠把它用在TextView, Button,甚至ToolBar菜單中(使用IconDrawable)。動畫
效果網站
它看起來是這樣的,很棒對吧,不須要處理任何圖片哦!編碼
對了,它自己就集成了多個圖標庫,連MaterialDesign圖標都提供了!
噢,對了,它還支持旋轉!
如今你還有什麼理由不使用它麼?快來10分鐘入門(撰寫中,喜歡請關注)。
圖標並非真正的圖片,而是特殊的字體,有一個特殊的編碼, Iconify 爲全部的IconTextView準備好這些字體,而且將{...}的部分映射到對應的字體。
uf039 <- fa_align_justify
uf036 <- fa_align_left
uf038 <- fa_align_right
uf270 <- fa_amazon
uf0f9 <- fa_ambulance
....
在Iconify中沒找到合適的圖標怎麼辦?Iconify是支持導入本身的字體的。詳細方法能夠參照Android多分辨率適配實踐【3】Iconify擴展,自制或導入SVG字體圖標庫(撰寫中,喜歡請關注)。而後去哪裏找字體呢?網上搜一下字體圖標庫會找到不少,這裏強推阿里巴巴圖標庫,是中國第一個最大且功能最全的矢量圖標庫。
至此,萬標俱備,快去得瑟吧!
問啊-定製化IT教育平臺,牛人一對一服務,有問必答,開發編程社交頭條 官方網站:www.wenaaa.com
QQ羣290551701 彙集不少互聯網精英,技術總監,架構師,項目經理!開源技術研究,歡迎業內人士,大牛及新手有志於從事IT行業人員進入!