我的应用程序支持多屏幕?

时间:2014-07-12 04:23:51

标签: android optimization drawable screen-size

我很困惑我是否必须处理我的设备,我正在测试我的应用程序,作为中型或大型密度设备。该设备是三星Galaxy S3 mini,480 x 800像素,4.0英寸显示屏,根据三星提供的设备规格。

我计划优化我的drawables,以支持各种各样的屏幕尺寸和密度。由于S3 mini是我的测试设备,哪个启动器图标实际上是其中使用的?它是drawable-ldpi,drawable-mdpi,drawable-hdpi还是drawable-xhdpi下的那个?

2 个答案:

答案 0 :(得分:1)

请尝试这种方式,希望这有助于您解决问题。

switch (getResources().getDisplayMetrics().densityDpi) {
    case DisplayMetrics.DENSITY_LOW:
         // write your code here.
         break;
    case DisplayMetrics.DENSITY_MEDIUM:
         // write your code here.
         break;
    case DisplayMetrics.DENSITY_HIGH:
         // write your code here.
         break;
    case DisplayMetrics.DENSITY_XHIGH:
         // write your code here.
         break;
    case DisplayMetrics.DENSITY_XXHIGH:
         // write your code here.
         break;
    case DisplayMetrics.DENSITY_TV:
         // write your code here.
         break;
 }

答案 1 :(得分:0)

我通过检测启动器图标的宽度检查了我的设备使用的drawable,如下所示:

BitmapDrawable bd=(BitmapDrawable) this.getResources().getDrawable(R.drawable.ic_launcher);
Log.i("moayad", ""+ bd.getBitmap().getWidth());

报告的宽度为72,这是放置在drawable-hdpi文件夹中的图标的宽度。因此,我的手机被归类为高密度文件夹。