日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ScreenMatch适配方案和PxCook配合使用踩坑记录

發布時間:2024/3/26 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ScreenMatch适配方案和PxCook配合使用踩坑记录 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先聲明:我會踩坑,是因為我對Android屏幕適配和PxCook使用了解的不到位,并不是說他們本身存在什么問題。。。

先說說PxCook(像素大廚),真是個好東西,UI設計師給到開發人員的設計圖,都是px值標注,而使用PxCook可以自動將px轉成Android開發適用的dp值,并且可以切換不同dpi查看對應的dp值。

關于ScreenMatch,關于他的用法,網上已經有很多介紹了,我就不再多少,接下來,主要說說他們兩個如何配合使用;

?

在ScreenMatch配置文件中,需要填寫base_dp(基準值)、match_dp(需要適配的值)、ignore_dp(不需要適配的值)、、、

當時就讓我很懵逼,base_dp到底應該填多少,設計圖支持這么多種尺寸(mdpi、hdpi、xhdpi、、、)。

?

重點建議1:設計圖只需要選擇一種dpi就可以,然后右邊就會自動計算出UI圖的對應寬高dp值,

重點建議2:ScreenMatch? 最小寬度適配符,選擇寬和高中最小的尺寸:例:1280dp×720dp,選擇720dp,不管是橫屏設備還是豎屏設備都要選擇寬高最小值。

重點建議3:將選好的最小dp值填入base_dp,之后就根據這個尺寸下的UI圖標注的dp值編寫界面。

然后將想要適配的屏幕對應的最小寬度dp填入match_dp中。

特定設備屏幕適配:需要自己去計算需要適配的最小限度符大小,

使用adb 命令:

adb shell wm density? ?獲取設備屏幕density值 (例:240)

adb shell wm size? ? ?獲取屏幕分辨率? ?(例1920×1080)

計算? ? sw = 1080 /(240/160)= 720? ? ?至于為什么除160? ?自己查一哈?

所以將720填入match_dp中。

?

AS有UI預覽功能,但是我在開發TV界面時,發現預覽只能選擇1080p Xhdpi? ?和 720p tvdpi兩種,總是預覽界面與顯示不匹配,原因是? 我沒有適配 xhdpi尺寸,xhdpi對應的最小限定符值為 540dp。當生成value-sw540dp資源文件時,預覽界面與實際運行的效果相差無幾。

重點建議4: 一旦選定base_dp值后,不要再去切換PxCook的dpi。

?

之后,pxCook顯示多少dp值,xml就使用多少dp值,運行后 系統會自動根據設備的density值選擇合適的value資源文件。

總結

以上是生活随笔為你收集整理的ScreenMatch适配方案和PxCook配合使用踩坑记录的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。