如何在android中支持不同的屏幕尺寸和不同的屏幕分辨率

时间:2012-07-14 07:36:24

标签: android

我在Android中开发应用程序,我必须支持所有不同的屏幕尺寸和密度,如中低档

2 个答案:

答案 0 :(得分:2)

要开发支持每种密度和分辨率的应用程序,我们应牢记以下几点:

(1)将不同大小的图像(具有相同名称)放在4个不同的文件夹中:

ldpi:mdpi:hdpi:xhdpi = 3:4:6:8

(2)这些决议通常使用的尺寸为:

ldpi = 36 * 36像素  mdpi = 48 * 48像素  hdpi = 72 * 72 px  xhdpi = 96 * 96 px

但您也可以使用所需尺寸的图像。(只是尝试按照不同尺寸的比例。)  在所有这些图像中,将自动选择适合设备密度的图像。

(3)除此之外,您还可以以编程方式获取设备的密度并相应地设置布局,如下所示:

   DisplayMetrics displayMetrics = new DisplayMetrics();
   getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
   switch(displayMetrics.densityDpi){ 
    case DisplayMetrics.DENSITY_LOW: 
        // layout for small sized devices.
        break; 
    case DisplayMetrics.DENSITY_MEDIUM: 
        // layout for medium-sized devices.
        break; 
    case DisplayMetrics.DENSITY_HIGH: 
        // layout for big-sized devices.
        break; 
   }  

答案 1 :(得分:1)

将以下代码写入Androidmanifest.xml文件

<supports-screens
        android:anyDensity="true"
        android:largeScreens="true"
        android:normalScreens="true"
        android:smallScreens="true" />