簡單來說就是phone建議用dp TV建議用px
先說下現在市面上TV分辨率的大概情況
兩種分辨率為主
1.720標清,分辨率為1280x720.
屏幕尺寸以32寸為主,部分電視為42寸
2.1080p全高清,分辨率為1920x1080
屏幕尺寸以42寸為主,此分辨率電視屏幕從32寸到50寸都有
適配遇到問題,已1080p尺寸為例:
分辨率固定不變,屏幕尺寸變化較大。
如:效果圖尺寸為1920x1080,如果使用dp進行布局設計,並且要實現和效果圖一樣的顯示,則需要根據不同尺寸進行適配,也就是要每個尺寸都要有一套布局文件。同樣720p的也要每個尺寸一個布局文件。這樣的話布局文件太多將無法維護。
因為分辨率相同但屏幕尺寸不同,所以每個尺寸的dp密度值也不相同。這樣一個控件在同樣分辨率不同尺寸上面顯示的效果和設計效果圖上面肯定也不相同。
那么如何適配分辨率固定但屏幕密度值不同的電視呢?
1.使用dp設定控件尺寸,為每個密度值單獨設定一套布局文件
優點:可以進行部分自適應,如1280x720中等密度(mdpi)尺寸的布局可以自適應到1920x1080高密度(hdpi)的屏幕
缺點:布局文件數膨脹,維護困難,有新的尺寸則需要新增新的布局文件進行適配
使用dp時,實際的適配只要保證一個尺寸的最佳顯示效果,其他尺寸僅作兼容可以適當降低顯示效果。這樣基本就只需要一套最佳適配布局,一套兼容適配布局。說的簡單,做起來有點困難。。。
2.使用px設定控件尺寸,根據分辨率適配布局
優點:只需要適配1920x1080和1280x720兩個分辨率的布局文件,最多兩套布局
缺點:使用了不被推薦的絕對像素進行控件設計,在ADT-18的插件上每個布局文件都會有一個警告的提示。。。
再說下適配固定分辨率不同密度的布局文件命名:
如:
1920x1080分辨率,高密度屏幕 布局文件目錄名為layout-hdpi-1920x1080
1920x1080分辨率,中密度屏幕 布局文件目錄名為layout-mdpi-1920x1080
720p的適配同理
ps:在設計布局時多使用相對定位,則能讓部分頁面布局可以適應大多說的分辨率。所以需要適配的布局應該不會很多的。
以上為個人最TV適配的理解,僅供看客參考。如果有錯誤也請指正,以免繼續誤導別人。