Android:哪个dimens.xml文件选择了什么屏幕尺寸?

时间:2014-07-10 21:49:02

标签: android xml android-layout text-size

如果我有一个表格布局,说2行2列。每个象限表格框都有静态文本,如" box_11"," box_12"," box_21"," box_22"。我希望文本大小对于更大的屏幕更大而对于小屏幕更小。我希望文本根据屏幕大小进行缩放。我应该怎么做? 我想我应该使用dimens.xml文件,定义:
<dimen name="activity_text_size">15sp</dimen>
然后我应该使用android:textSize="@dimen/activity_text_size"

我看到有不同的价值观#34;我的项目工作区中的值,值-sw600dp,values-sw720dp_land,values-v11,values-v14等目录。每个&#39;值&#39;目录都可以有一个dimens.xml文件。在有多个文件的情况下,在什么基础上选择dimens.xml?

2 个答案:

答案 0 :(得分:1)

例如:

//进入dimen.xml(600dp)

<resources> <dimen name="activity_text_size">15dp</dimen> </resources>

//进入dimen.xml(sw720dp_land)

<resources> <dimen name="activity_text_size">20dp</dimen> </resources>

//进入dimen.xml(w820dp)

<resources> <dimen name="activity_text_size">25dp</dimen> </resources>

对于任何大小的屏幕,你应该使用特定的dimen.xml(你的大小目标)并使用相同的dimen.name。

答案 1 :(得分:0)

参考@ matiash的链接和其他官方资源:   - http://developer.android.com/guide/topics/resources/providing-resources.html#BestMatch   - https://developer.android.com/guide/practices/screens_support.html

&#39;标准&#39;提供的密度是:

  

一组六个广义密度:

     
      
  1. ldpi(低)~120dpi

  2.   
  3. mdpi(中)~160dpi

  4.   
  5. hdpi(high)~240dpi

  6.   
  7. xhdpi(超高)~320dpi

  8.   
  9. xxhdpi(extra-extra-high)~480dpi

  10.   
  11. xxxhdpi(extra-extra-extra-high)~640dpi

  12.   

使用多个dimen.xml文件创建应用程序时,会选择适合该屏幕大小的文件。

如果在实例中没有为该特定屏幕密度提供资源:

  

如果没有可用的匹配资源,系统会使用默认资源并根据需要向上或向下扩展以匹配当前屏幕大小和密度

希望这可以帮助你:)