標籤:字型 layout 不同的 獨立 平台 height 自己 文本 動態
在本文中,我們將介紹一些簡單的處理方式,協助開發人員輕鬆編寫出能夠應對各類裝置型號的應用程式文本方案,同時為使用者提供自訂文字尺寸功能。別擔心,整個過程沒什麼難度,只要一步步按指南進行操作,大家再也不用為調整顯示效果而勞心傷神了。
在這篇上手教程中,我們將討論一些實用性步驟,指引開發人員在擁有足夠靈活性的前提下保證文字清晰易讀,同時使自己的產品能夠適應多種螢幕類型及各類使用者顯示設定。
使用者如何按需求配置字型設定
首先要強調一點,某些使用者可能存在視力障礙甚至幾近失明,他們無法順利閱讀一般尺寸下的文字內容。Android作業系統意識到了這些情況,並提供了一套顯示協助工具功能,使得使用者可以根據自己的使用習慣隨意縮放裝置中文本字型的大小。
要在裝置上修改字型設定,首先啟用“設定”應用,然後選擇“顯示”項下的“字型尺寸”。使用者可以在裝置預置的四種文本字型尺寸中選擇適合自己的方案(包含小、正常、大、超大),詳見圖一。
使用動態字型尺寸
如果大家希望自己的應用文字能夠根據使用者喜好設定進行靈活調整,則需要使用SP(即可縮放點)單位對文本字型尺寸加以定義。Android平台允許 我們通過各種方式為各種顯示要素的尺寸賦值。而在文本尺寸方面,我們一般推薦使用諸如DP(裝置獨立畫素)及SP為顯示密度進行單獨設定。SP單位在 文字尺寸方面表現最佳,因為它能夠完全按照使用者的顯示設定調整實際效果。
以下內容就是我們在SP單位中利用TextView(即文本顯示)功能定義字型尺寸:
- <TextView
- android:id="@+id/textView4"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="Sample Text - 26sp"
- android:textSize="26sp" />
而在標題、首行文本或者滾動文字框方面,我們往往不希望使用者的偏好設定給顯示效果帶來影響。在這類情況下,大家就應該嘗試DP單位,因為它完全根據裝置的像素密度調整顯示,而不涉及任何使用者偏好設定。
使用固定像素尺寸
如果大家希望自己的應用文本在任何情況下都保持同樣的尺寸,那麼PX單位的固定像素尺寸功能會幫上大忙。雖然有時候這麼做會使預設字型尺寸在某些設 備上難以閱讀,但如果大家有充分的理由堅持這一點,那麼禁用常值內容縮放或尺寸變更還是有必要的。在這類情況下,大家不妨利用絕對尺寸值為字型設計大小, 例如指定文字的像素顯示數量。
在下面的文字框中,我們利用像素(簡稱PX)單位為字型設定固定的尺寸。通過這種方式,常值內容會嚴格按照我們的定義進行顯示,而不會被使用者的喜好設定或者其它幹擾因素所影響。
- <TextView
- android:id="@+id/textView5"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="Sample Text - Fixed Pixels"
- android:textSize="14px" />
使用標準系統字型尺寸
Android平台定義了一套普遍適用的字型尺寸方案,我們可以將其直接套用到自己的應用程式當中:小、中、大三種選項基本能夠滿足各類使用者需求。這些字型尺寸以SP單位為基礎配置而成,因此會隨著使用者的喜好設定而發生變更。
下面的XML定義了三種文字框控制類型,一種會顯示小字型、一種顯示中字型、第三種則顯示大字型。
- <TextView
- android:id="@+id/textView1"
- style="@android:style/TextAppearance.Small"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="Sample Text - Small" />
- <TextView
- android:id="@+id/textView2"
- style="@android:style/TextAppearance.Medium"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="Sample Text - Medium" />
- <TextView
- android:id="@+id/textView3"
- style="@android:style/TextAppearance.Large"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="Sample Text - Large" />
現在讓我們將前面提到的內容綜合起來,並在“冰淇淋三明治”版本的Android裝置上看看文字框的實際顯示效果。先看第一幅圖,使用者在喜好設定中選擇了普通字型;在第二幅圖中,使用者則在喜好設定中選擇了超大字型。請注意文字框功能在不同的設定下是如何控制顯示效果的。
總結
Android裝置林林總總,尺寸不同且形狀各異,因此Android使用者必然會根據自己裝置型號的不同對應用程式中的字型提出有針對性的需求。由 於螢幕尺寸的固有限制,開發人員必須在應用程式中採取適當的應對措施,才能保證常值內容在任何機型中都擁有理想的可讀性與靈活的排版效果。第一步,確保自 己的應用程式使用完全獨立於裝置之外的、以像素為基礎單位的尺寸設定方案,但也不要忘了使用者佈建將給實際顯示效果帶來的巨大甚至是意料之外的影響。
Android中如何設定字型大小