Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 談談Android機型適配

談談Android機型適配

編輯:關於Android編程

機型適配的作用在於使Android應用程序適用於不同的國家語言、型號、尺寸和SDK版本等手機環境中,其主要功能和界面風格保持不變。

手機適配主要包括三個方面:語言適配、屏幕適配、SDK平台的適配,而其中最麻煩的估計就是屏幕適配了。。。

1.先說語言適配。語言適配的作用主要用於文本內容的國際化,如按鈕的標題、輸入提示信息等。在切換手機語言時或者安裝在不同語言手機上時,可以根據語言的不同做出改變。

步驟:

在res這個下新建Android resuorce file ,類型選擇Values,然後Available qualifiers:選擇Locale,然後選擇語言即可。

2.接下來說說Android屏幕適配。Android屏幕適配出現的原因就是Android碎片化太嚴重!而隨著支持Android 系統的設備(手機、平板、電視、手表)的增多,設備碎片化、品牌碎片化、屏幕碎片化的程度也在不斷增加。

mdpi、hdpi 、xdpi、 xxdpi用來修飾Android中的drawable文件夾及values文件夾。

Google對mdpi、hdpi 、xdpi、 xxdpi等的官方標准:

 

\

 

在進行開發的時候我們需要將合適大小的圖片放在合適的文件夾裡面。

Android系統尋找圖片的規則是這樣的:

1.去屏幕密度對應的目錄去找,如果找到就拿來用;

2.如果沒找到,就去比這個密度高一級的目錄裡面去找,如果找到就拿來用;

3.如果沒找到就繼續往上找,以此類推;

4.如果到了xxhdpi目錄還沒有找到的話,就會去比自身屏幕密度低一級的目錄去找,如果低一級的目錄>= hdpi,找到了就拿來用;

5.如果沒找到,就去mdpi目錄去找,如果找到了就拿來用;

6.如果沒找到,就去默認的drawable目錄裡面去找,如果找到了就拿來用。

7.如果沒找到,再去最低的ldpi目錄裡面去找,如果找到了就拿來用;

8.如果沒找到,那就是沒找到了,圖片無法顯示。(不過一般不會出現這種現象,因為如果每個目錄都沒找到,你是編譯不過的)

這裡有兩點需要注意:

1.首先會去比自己密度高的目錄裡去找,這是因為系統相信,你在密度高的目錄裡會放置分辨率更大的圖片,這樣的話這個圖片會被縮小,但同時顯示效果不會有損失,但是如果優先去低一級的目錄裡去找的話,找到的圖片就會被放大,這樣的話這個圖片就會被拉扯模糊了。

同一張圖片你在mdpi與xxhdpi目錄裡各放置了一份,這個應用你現在運行在hdpi的手機上,那應用會選擇哪個呢?答案肯定是xxhdpi裡的啦~即使hdpi離mdpi更近一點兒!

2.如果在mdpi裡找不到是不會直接去ldpi裡找的,而是先去默認的drawable目錄裡找,這是drawale目錄和drawale-mdpi是一個級別的。

解決方案:

1.使用wrap_content、match_parent

2.在線性布局中使用weight屬性

3.使用相對布局,禁用絕對布局

4.使用屏幕方向限定符

setRequestOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

setRequestOrientation(ActivityInfo.SCREEN_ORIENTATION_PORITRAIT);

5.使用9宮格圖片(.9.png).9的制作實際上就時在原圖片上添加1px的邊界,然後按照我們的需求,把對應的位置設置成黑色,系統就會根據我們的實際需求進行拉伸。修改.9圖片可以使用Android自帶的工具:\sdk\tools\draw9patch.bat

6.設置ImageView 的ScaleTye屬性。設置不同的ScaleType會得到不同的顯示效果喲。一般情況下,設置為centerCrop能獲得較好的適配效果

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