螢幕適配的這個問題到現在對於每個android開發人員來說,可能都是小菜一碟了,可三年前不這樣,五花八門,簡直八仙過海,各顯神通。
首先,由於android 的碎片化結構,我們目前知道的市面上僅針對手機或者平板的螢幕有以下幾種:
480x800 ,720x1280,1080x1920,1440x2560
以及800x1280,1200x1920,2650x1800,2650x1600....
以後可能還會有更多的。
總結歸納有以下幾種:
先不說個中原理啊(研究各種原理和缺陷的網上資料一大把)。這裡只是列舉:
布局1、全篇使用比重來做。
2、建立不同解析度的layout目錄,然後建立布局檔案(真的很low,而且工作量巨大)
3、dimens上面做文章,建立不同values資料夾。
4、android還提供了了百分比布局庫(其實對於老專案來說,就是個坑了,所有的布局都要改一遍)
我個人在對適配上,還是喜歡用dimes,比較對我的口味。
其實普遍的是通過專案中的drawable-hdpi ,drawable-mhdpi,drawable-xhdpi,drawable-xxhdpi分別放置由ui提供的四種解析度。
其實,我還是覺得用nine-patch(即通常講的.9圖)比較實用。工作量將節省不少,更加便捷。如果有不同意見請指教。哈哈。。
之前我一直去寫個類,建立dimens檔案,實在費勁,就在網上找了個基於swing的乙個dimens檔案生成工具。
這裡分享一下,也自己留一下備用。
左邊是輸入dimes檔案,也就是你需要適配哪些dp 、xp、sp,中間是基於哪個解析度,右邊是輸出路徑。
rem適配布局
rem適配布局 rem基礎 rem是乙個單位 rem root em 是乙個相對單位,類似於em,em是父元素字型大小 不同的是rem的基準是相對於html元素的字型大小 比如,根元素 html 設定font size 12px 非根元素設定width 2rem 則換成px表示就是24px rem的...
rem適配布局
rem root em 是乙個相對單位,類似em,em是相對于父元素的字型大小 不同的是rem的基準是相對於html元素的字型大小 rem的優勢 父元素文字大小可能不一致,但是整個頁面只有乙個html,可以很好來控制整個頁面的元 素大小 查詢 media query 是css3新語法 media m...
rem適配布局
思考?頁面布局文字能否隨著螢幕大小變化而變化?流式布局和flex布局主要針對與寬度布局,那高度如何設定?怎麼樣讓螢幕發生變化的時候元素高度和寬度等比例縮放?這時就需要用到rem適配布局。rem root em 是乙個相對單位,類似於em,em是相對于父元素的字型大小。而rem的基準是相對於html元...