Android通过编程区分ldpi、mdpi等

Android通过编程区分ldpi、mdpi等,android,xml,layout,resolution,Android,Xml,Layout,Resolution,我有多个资产和多个布局,但在这个应用程序的某些部分,我在java代码中设置了宽度和高度倾斜值。这里如何区分屏幕大小?上下文。getResources().getDisplayMetrics()。密度*大小索引将提供当前设备上的大小(以像素为单位) 编辑:如果需要基于配置的条件值,可以执行以下操作: res/values/dimens.xml: <resources> <dimen name="foo">8dip</dimen> </resourc

我有多个资产和多个布局,但在这个应用程序的某些部分,我在java代码中设置了宽度和高度倾斜值。这里如何区分屏幕大小?

上下文。getResources().getDisplayMetrics()。密度*大小索引将提供当前设备上的大小(以像素为单位)

编辑:如果需要基于配置的条件值,可以执行以下操作:

res/values/dimens.xml:

<resources>
    <dimen name="foo">8dip</dimen>
</resources>
<resources>
    <dimen name="foo">16dip</dimen>
</resources>

8dip
res/values xlarge/dimens.xml:

<resources>
    <dimen name="foo">8dip</dimen>
</resources>
<resources>
    <dimen name="foo">16dip</dimen>
</resources>

16倾角
这些值可以根据任何可用的资源配置说明符进行更改。

上下文。getResources().getDisplayMetrics().density*sizeInDips
将提供当前设备上的大小(以像素为单位)

编辑:如果需要基于配置的条件值,可以执行以下操作:

res/values/dimens.xml:

<resources>
    <dimen name="foo">8dip</dimen>
</resources>
<resources>
    <dimen name="foo">16dip</dimen>
</resources>

8dip
res/values xlarge/dimens.xml:

<resources>
    <dimen name="foo">8dip</dimen>
</resources>
<resources>
    <dimen name="foo">16dip</dimen>
</resources>

16倾角
这些值可以根据任何可用的资源配置说明符进行更改。

这将有助于:

  • xlarge屏幕至少为960dp x 720dp
  • 大屏幕至少为640dp x 480dp
  • 正常屏幕至少为470dp x 320dp
  • 小屏幕至少为426dp x 320dp

这将有助于:

  • xlarge屏幕至少为960dp x 720dp
  • 大屏幕至少为640dp x 480dp
  • 正常屏幕至少为470dp x 320dp
  • 小屏幕至少为426dp x 320dp


ah,我可以根据它的相等值做条件语句,好的,如果您需要基于配置的条件值,您可以始终使用
dimen
资源。示例添加在answer.ah中,因此我可以基于等于的内容执行条件语句,好的。如果您需要基于配置的条件值,您可以始终使用
dimen
资源。答案中添加了示例。