Android為TV端助力:(轉載)修改TextView字型樣式

來源:互聯網
上載者:User

標籤:等等   替換   不能   衝突   ali   調整   mono   nts   一起   

一、開篇

因為 Android 字型相關的內容還比較多的。有時候其實我們只需要調整一下屬性就可以滿足設計師的需求,或者是一個退後的方案(畢竟有發版的時間卡住了),有一些效果可以大概滿足需求。

那麼本文就先介紹一下再 Android 下原生內建的一些字型的一些基本概念和使用。

需要注意的是,內建的一些字型只對英文有效。

二、Android 的預設字型

Android 系統預設使用的是一款叫做 Robote 的字型。Robote 本身就是 Google 自己的字型格式,Android 和 Chrome 作業系統上,預設都會使用 Robote 字型,並且也是 Google 視覺語言推薦的字型。

想要瞭解更多關於 Robote 的內容,可以去 Google 的網站上查看。

https://fonts.google.com/specimen/Roboto

正常來說,Robote 就已經提供了多種的選擇,例如:粗細、斜體 等等。但是通常它並不能滿足我們設計師的需要。

接下來看看當我們想要使用 Android 內建的一些字型的時候,我們需要使用哪些屬性。

三、哪些屬性可以影響字型

Android 本身已經提供了一些修改字型樣式的屬性和方法。

當你想要修改字型的時候,你將面對三個屬性,它們都有對應的 Java 方法。

  • android:textStyle
  • android:typeface
  • android:fontFamily

下面來分別詳細的說明這幾個屬性。

3.1 android:textStyle

textStyle 主要用於設定一些字型的樣式,它是對所有的字型都生效的。也就是說哪怕你替換了字型,依然可以使用 textStyle 來修飾它的樣式。textStyle 本身支援的可選項有 normal|bold|italic,它們也非常的好理解,就是普通|粗體|斜體

可以看到,字型是不受 textStyle 影響的,這裡影響的只有它的樣式。

3.2 android:typeface

typeface 可以用於設定一些預設的字型,它可選的屬性有 normal|sans|serif|monospace 等。normal 和 sans 的字型其實是一樣的,serif 是一個帶襯線的字型,而 nonospace 是等寬字型。

光這樣說,其實也無法理解它們,直接上比較能說明問題。

可以看到 serif 在預設的字型上,增加了襯線。而 nonospace 限制了每個字元的寬度,讓它們達到一個等寬的效果。

等寬其實很好理解,襯線到底是什麼意思?這裡引用維基百科的一張圖,就能很直觀的說明問題。

襯線其實就是字型邊緣的那一點點小啾啾。

3.3 android:fontFamily

fontFamily 看著像是對 typeface 的一次加強,從它的可選項就能看出來,它更細緻的區分了字型的樣式。

fontFamily 的可選項還是很多的,這裡就不一一列舉了。不過需要注意,有一些字型的設定是有版本限制的。

例如:sans-serif-medium 是需要 Android 5.0 的版本才支援的。

下面直接舉幾個例子看看效果了:

需要注意的是,如果同時配置了 typeface 和 fontFamily ,將使用 fontFamily 配置的字型。

而除了 typeface 和 fontFamily 會有衝突之外,它們倆都是可以配合 typeStyle 屬性一起使用的,也就是說,這裡配置的字型,都是可以再加粗或者加斜體。

Android為TV端助力:(轉載)修改TextView字型樣式

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.