2017-08-03 287 views
2

我使用的尺寸多支持度,我已經給定值這樣 I have attached screen shot dimen folder please check this如何支持多種屏幕尺寸標註

我有做的價值的文件夾一樣

value 
dimen.xml 
<dimen name="padding_1">1dp</dimen> 

values-sw320dp-hdpi 
dminen.xml 
<dimen name="padding_1">what padding should I give</dimen> 

values-sw320dp-xhdpi 
dminen.xml 
<dimen name="padding_1">what padding should I give</dimen> 

values-sw320dp-xxhdpi 
dminen.xml 
<dimen name="padding_1">what padding should I give</dimen> 

values-sw360dp 
dminen.xml 
<dimen name="padding_1">what padding should I give</dimen> 

values-sw480dp 
dminen.xml 
<dimen name="padding_1">what padding should I give</dimen> 

values-sw600dp 
dminen.xml 
<dimen name="padding_1">what padding should I give</dimen> 

values-sw720dp 
dminen.xml 
<dimen name="padding_1">what padding should I give</dimen> 

我的問題是,我應該給我什麼填充尺寸,以便我可以支持不同的設備,比如如何爲每個值文件夾找到1dp 。

我有此鏈接 https://developer.android.com/training/basics/supporting-devices/screens.html

但不能清楚地瞭解經過。我已經通過了Dimenify插件,但沒有得到明確的解決方案。

編輯 我想知道有沒有什麼辦法可以把確切的尺寸在所有的價值桶或 任何DP轉換器轉換成精確尺寸的所有值桶中的Android

+0

我建議您閱讀官方文檔的[本部分](https://developer.android.com/guide/practices/screens_support.html)。 而且您的維度應根據其用途(例如「main_title_margin_top」)而不是它們的值命名。 除非您真的**有問題或需要針對屏幕尺寸的特定設計,否則不需要創建與支持的屏幕尺寸一樣多的dimens.xml文件。 – Eselfar

+0

@Eselfar感謝您的回覆,但我的問題是,在android中有任何工具將所有值桶的維度轉換爲一樣,如果我在值-sw320dp中使用1個dp,那麼維度將用於值-sw480dp –

+0

這是使用點像素(dp)而不是像素(px)的目的。它應該根據屏幕自動調整。如果你的屏幕A是10「和1280x720px,而你的屏幕B是5」和1920x1080px,屏幕A上的1dp會與屏幕B不同。這就是爲什麼在大多數情況下,您只需指定一次大小,然後由系統自動管理。平板電腦有時會出現問題,因爲它們具有sh * tty比率,因此您必須爲大屏幕創建其他dimens.xml文件。但就是這些。它在我之前的評論中鏈接的頁面上進行了解釋。 – Eselfar

回答

0
values folders to create 

values-sw320dp, 
values-sw480dp, 
values-sw600dp, 
values-sw720dp. You should create dimens.xml in all the values folders. 

values-sw360dp 
dimens.xml 
<dimen name="padding_1">5dp</dimen> 

values-sw480dp 
dimens.xml 
<dimen name="padding_1">8dp</dimen> 

values-sw600dp 
dimens.xml 
<dimen name="padding_1">10dp</dimen> 

values-sw720dp 
dminen.xml 
<dimen name="padding_1">13dp</dimen> 

Based on your requirement you can give padding or any dimen values. As you 
given, you should give same name for dimen in all the folders. Android will 
automatically pick the dimen value based on your screen size. 
+0

@MinnnuKaAnae我想知道如何獲得所有價值文件夾的所有維度,如2 DP,3 DP,.....和所有,有沒有任何公式或任何工具來獲得這個尺寸 –

+0

你不需要擔心所有維度,例如,在你的xml中,一個edittext出現在你給出的維度中,比如android:padding =「@dimen/padding_1」,android會自動選擇你提到的所有維度,用padding_1表示不同的屏幕大小 – MinnuKaAnae

+0

我想知道如何將全維dp放在不同的不同文件夾中 –

0

的一些技巧來幫助你解決你的問題。

dp指標允許您定義跨設備密度的一致大小。 這通常意味着它們在大多數設備上看起來完全相同。

固定寬度適用於少數情況,但視覺吸引力的確在於,您可以縮小較小設備上的用戶界面大小,並在較高的設備上進行擴展。您需要開始使用android的bucketing功能,該功能根據具有相同限定名稱的設備配置提取不同的資源。

假設你可以選擇例如。有利潤

a margin_normal也許在xdhdpi 16dp的視覺完美,但你看到18dp適用於xxxhdpi,而14dp適用於xhdpi設備。 這些是主觀價值,但放心的比例因子是這個規則的一個很好的近似值。

Dimenify會自動處理此轉換,但您需要通過反覆試驗和一次性工作來提供比例因子。