0

我现在很困惑。我尝试制作不同的图像并将它们放在适当的文件夹(xhdpi,ldpi)中,但我的应用程序不适用于从 2.7 英寸到 10 英寸的所有设备类型。所以我决定为不同的屏幕尺寸制作不同的布局。我正在从此代码中获取以英寸为单位的设备尺寸-

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
double x = Math.pow(dm.widthPixels/dm.xdpi,2);
double y = Math.pow(dm.heightPixels/dm.ydpi,2);
double screenInches = Math.sqrt(x+y);
Log.d("debug","Screen inches : " + screenInches);

现在我想要的是如果设备大小大约是 2.7" 我的应用程序开始使用自定义文件夹中的布局。这可能吗?

4

1 回答 1

0

您可以在具有不同限定符的布局文件之一中包含小部件上的标签,并在运行时检查这些标签。

layout-large/layout1.xml:
     <Button
    android:id="@+id/btn1"
    ...
    android:tag="large" />

layout-small/layout1.xml:
     <Button
    android:id="@+id/btn1"
    ...
    android:tag="small" />

在运行时检查它们:

findViewById(R.id.btn1).getTag().toString()
于 2013-06-05T11:36:55.730 回答