Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android字體大小怎麼自適應不同分辨率?

Android字體大小怎麼自適應不同分辨率?

編輯:關於Android編程

今天有人問我,android系統不同分辨率,不同大小的手機,字體大小怎麼去適應呢?其實字體的適應和圖片的適應是一個道理的。

一、

原理如下:

假設需要適應320x240,480x320分辨率。在res目錄下新建文件夾values-320x240, values-480x320。然後在文件夾 values ,values-320x240 和 values-480x320 下新建xml文件dimens.xml,該xml文件內容如下:

vaules-320x240下的dimens.xml內容如下:



	18sp

values-480x320 下的dimens.xml內容如下:



	18sp
針對不同分辨率的手機,android系統會自動適配加載相應文件中的字體的大小值,btnTextSize的值是不同的。在布局文件中引用的方式如下:


在java文件中這樣調用:

int size= (int)this.getResources().getDimension(R.dimen.Text_size);

通過這種方法,可以方便設置在不同分辨率下,字體的大小了。當然,不僅僅字體大小,寬和高等其他的一些屬性,也可以通過類似的方式來設置!


二、

1. 在視圖的 onsizechanged裡獲取視圖寬度,一般情況下默認寬度是320,所以計算一個縮放比率
rate = (float) w/320 w是實際寬度
2.然後在設置字體尺寸時 paint.setTextSize((int)(8*rate)); 8是在分辨率寬為320 下需要設置的字體大小
實際字體大小 = 默認字體大小 x rate

布局多分辨率適配 :

\

技術咨詢:請關注微信訂閱號,微信名:非著名程序員,微信號:smart_android

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved