因爲當我從json解析image-url並將其設置爲ImageView時,它在像Lenevo k3 Note這樣的較大設備上尺寸較小。位圖是一個好主意,或者是否有任何其他方法來設置從json解析的圖像。我已經將ImageView設置爲將內容作爲高度和寬度進行包裝以相應地進行調整。相同的位圖對象在較小的設備上較大但不準確,爲什麼會出現這種情況,我做了很多R & D但無法修復它。請提供一個更好的解決方案。一個定義良好的解決方案將提前得到驗證。Bitmap在具有imageview的大型設備中正在降頻
//code to set the imageview with bitmap
String imageUrl=saving.getBankLogo()
Bitmap bitmap=getBitmapFromURL(imageUrl);
//resized Bitmap
Bitmap resizedBitmap=bitmap.createScaledBitmap(bitmap,bitmap.getWidth(),bitmap.getHeight(),false);
imgIcon.setImageBitmap(resizedBitmap);
//code to get Bitmap from url
public Bitmap getBitmapFromURL(String imageUrl) {
Bitmap myBitmap;
Bitmap newBitMap;
try {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
URL url = new URL(imageUrl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
BitmapFactory.Options bitmapOptions = new BitmapFactory.Options();
bitmapOptions.inSampleSize = 1;
bitmapOptions.inScaled=true;
/* DisplayMetrics displayMetrics = getResources().getDisplayMetrics();
int width = displayMetrics.widthPixels;
int height = displayMetrics.heightPixels;
*/
myBitmap = BitmapFactory.decodeStream(input, null, bitmapOptions);
/*myBitmap = Bitmap.createScaledBitmap(myBitmap, myBitmap.getHeight(),
myBitmap.getWidth(), true);*/
/* newBitMap = scaleToActualAspectRatio(myBitmap);
newBitMap=decodeFile(input);*/
input.close();
} catch (IOException e) {
e.printStackTrace();
return null;
}
return myBitmap;
}