Android dp方式的屏幕適配工具使用(Android Studio插件方式)

最新最全文章(2018-08-25):https://blog.csdn.net/fesdgasdgasdg/article/details/82054971

dp方式屏幕適配原理請看:http://blog.csdn.net/fesdgasdgasdg/article/details/52325590

                                            http://download.csdn.net/download/fesdgasdgasdg/9913744

bat批處理文件的使用方式請看:http://blog.csdn.net/fesdgasdgasdg/article/details/78107653

插件源碼請看:https://github.com/mengzhinan/ScreenMatch

 

爲了使用方便,我把雙擊bat的方式改成了在Android Studio中的項目上右鍵彈出菜單的方式。選擇菜單即可完成所有的工作,原理和bat方式一樣。

使用步驟如下:

1、下載安裝。

點擊Browse repositories...去搜索安裝,安裝好後即可看到ScreenMatch插件,右側有描述信息和相關連接。

 

2、調起菜單。

安裝好後,在項目的任意目錄或文件上右擊菜單(或按快捷鍵),即可看到ScreenMatch選項。

 

3、選擇在哪個module下執行適配。

即基於哪個module下的res/values/dimens.xml文件作爲基準dimens文件,生成的其他尺寸dimens文件放在哪個module下。

 

選擇一個,點擊確定。

 

 

如果無誤,則會有成功提示,如上圖。完成了,使用就這麼簡單。

 

4、提供默認dimens文件樣例。

在項目的根目錄提供了一個默認的dimens.xml文件樣例,怕你不知道怎麼寫,或者懶。如果不需要,可以刪除。在後面講到的配置文件中可以配置是否生成。

 

5、生成配置文件。

生成了配置文件,如果刪除了或者沒有創建,則所有的適配都是用默認值,默認值請看源碼。

 

6、配置文件詳解。



#
# 手機widthDP基準值,一般都是360dp,不建議更改,除非你對屏幕適配原理有深刻的見解。否則不給是或者給360,程序內的默認值爲360

base_dp=360

 


# 你還有哪些widthDP值需要適配,多個值以英文逗號分隔。如果算出來的widthDP值有小數,取整。比喻411.948,則取411
# 系統默認適配的widthDP值爲: 384,392,400,410,411,480,533,592,600,640,662,720,768,800,811,820,960,961,1024,1280,1365
match_dp=

 


# 如果你覺得系統默認適配的某些值不想要,就在此設置,下次適配時會忽略這些值。多個值以英文逗號分隔。
ignore_dp=

 


# 項目根目錄中哪些目錄不是module或者你不想讓他在Dalog中顯示,就在此設置。多個值以英文逗號分隔。
# 系統默認忽略了這些目錄:    .gradle,gradle,.idea,build,.git
ignore_module_name=

 


# 請設置默認處理和存放dimes適配文件的module。
# 如果你後面設置了不彈出Dialog,則適配時系統默認取這個module路徑處理適配操作。
match_module=app

 


# 是否不彈出適配時的選擇對話框,使用上面的match_module默認值。
# 此處賦值爲  true 或者 false,默認值爲false,即彈出對話框。
not_show_dialog=false

 


# 是否不再生成項目根目錄默認的dimens樣例文件?怕你不會寫,所以我給你生成了
# 此處賦值爲   true 或者 false,默認爲false,即生成。
not_create_default_dimens=false

 


# 是否同時適配sp字體。因爲我怕字體也跟着xxxdp/360dp這樣的比例縮放不準確。
# 此處賦值爲  true 或者 false,默認值爲true,即sp和dp一樣,都等比縮放。此處待研究和驗證。
is_match_font_sp=true

 

//===以下更新===============================================================

# 關於生成的dimens.xml適配文件夾,你是想用values-wXXXdp 還是 values-swXXXdp 格式?
# 通過對官網文檔的查閱,sw意思是smallest width dp的含義,即始終使用最小寬度 dp 值。
# 這樣做的好處是,可以解決手機橫豎屏切換時到處的意想不到的bug出現,即某些view的寬高尺寸會放大一倍。
# 比喻:你手機的widthDP=360dp,heightDP=640dp。
# 如果豎屏時手機尋找values-w360dp或values下默認的360dp的dimens.xml文件值;
# 如果旋轉手機爲橫屏模式,手機會尋找values-w640dp目錄中的dimens.xml文件值;
# 故,導致UI發生變化了。
# sw即表示無論是橫屏還是豎屏,手機系統都會使用最小width dp值;
# 即上例中,橫豎屏時都使用values-sw360dp或values下默認的360dp的dimens.xml文件值。
# 下面配置項的值如果爲false,則表示你只想生成values-wXXXdp格式,如果你的app不涉及到頁面橫屏。
# 不給值或值爲true,表示生成values-swXXXdp格式。
# 默認值爲true。
create_values_sw_folder=true


如果你發現你的項目裏面的screenMatch.properties配置文件中沒有上述某些值,
則請刪除你的配置文件,右鍵項目運行一遍插件,則會再次生成最新的配置。


關於默認的dimens.xml文件內容的問題。這些基礎dimen項,難道自己手寫?
我早已經給你們提供了模板文件,在你項目的根目錄,
與screenMatch.properties配置文件並列的screenMatch_example_dimens.xml文件。
你可以把此screenMatch_example_dimens.xml模板文件更名爲dimens.xml複製到....src/main/res/values下,
或者更新已有的....src/main/res/values/dimens.xml文件內容。

--------------------- 作者:android阿杜 來源:CSDN 原文:https://blog.csdn.net/fesdgasdgasdg/article/details/78108169?utm_source=copy 版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章