android在json数据上显示ImageView上的图像(不同的屏幕分辨率)

时间:2017-07-01 14:30:16

标签: android json imageview android-screen-support android-screen

我正在获取json数据。在那个json我有一个图像网址数组,用于一个图像的不同屏幕分辨率

"images": {
                "full_url": "http://******/assets/tmp/",
                "ldpi": "http://******/assets/tmp/ldpi/****.png",
                "mdpi": "http://******/assets/tmp/mdpi/****.png",
                "hdpi": "http://******/assets/tmp/hdpi/****.png",
                "xdpi": "http://******/assets/tmp/xdpi/****.png"
            }

我想根据屏幕尺寸显示此图像

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容,

float density = getResources().getDisplayMetrics().densityDpi;

//DisplayMetrics.DENSITY_LOW - LDPI(120)
//DisplayMetrics.DENSITY_MEDIUM - MDPI(160)
//DisplayMetrics.DENSITY_HIGH - HDPI(240)
//DisplayMetrics.DENSITY_XHIGH - XHDPI(320)
//DisplayMetrics.DENSITY_XXHIGH - XXHDPI(480)
//DisplayMetrics.DENSITY_XXXHIGH - XXXHDPI(640)

根据您可以添加图片的密度,参考this

前;

if(density == DisplayMetrics.DENSITY_MEDIUM) {
    // Use mdpi image in your JSON
} else if(density == DisplayMetrics.DENSITY_XHIGH) {
    // use xdpi image in your JSON
} else if(density == DisplayMetrics.DENSITY_HIGH) {
    // use xdpi image in your JSON
} else {
    // use full image
}