我很困惑我是否必须处理我的设备,我正在测试我的应用程序,作为中型或大型密度设备。该设备是三星Galaxy S3 mini,480 x 800像素,4.0英寸显示屏,根据三星提供的设备规格。
我计划优化我的drawables,以支持各种各样的屏幕尺寸和密度。由于S3 mini是我的测试设备,哪个启动器图标实际上是其中使用的?它是drawable-ldpi,drawable-mdpi,drawable-hdpi还是drawable-xhdpi下的那个?
答案 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文件夹中的图标的宽度。因此,我的手机被归类为高密度文件夹。