一般情况下不同密度对应不同分辨率
密度 ldpi mdpi hdpi xdpi xxdpi
屏幕密度 0.75 1 1.5 2 3
像素密度值(density) 120 160 240 320 480(密度:480/160=3)
代表分辨率 240*320 320*480 480*800 720*1280 1080*1920
但当屏幕密度density相同,但分辨率不同时,2个不同分辨率的设备会引用同一个资源文件(drawable-mdpi和values-mdpi)
解决办法:
1.先获取准确的屏幕分辨率
/**
* 获取屏幕分辨率
*/
private void getScreenInfo() {
int screenWidth = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay()