android在json数据的ImageView上显示图像(不同的屏幕分辨率)
问题描述:
我正在获取json数据。在JSON我有图像的网址不同的屏幕分辨率的阵列,用于像这样android在json数据的ImageView上显示图像(不同的屏幕分辨率)
"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"
}
一个图像我想显示此图像依赖于画面大小
答
可以使用像以下,
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也是如此。例如:
Ex;
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
}
我想知道如何决定使用哪个图片url? –
添加例子看看 –
好吧,谢谢,我明白了 –