Should i resize the bitmap before adding to a ImageView or let the ImageView resize the Bitmap?
i have a simple question: Should i resize a bigg开发者_如何学Goer bitmap before adding to a ImageView or let the ImageView resize the Bitmap? What's the right way, regarding performance?
Thanks
Consider using scale for ImageView, and don't bother about resizing. You can scale an image like this, for example:
image.setAdjustViewBounds(true);
image.setMaxHeight(50);
image.setMaxWidth(50);
image.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
The bigger the image, the bigger the size, I wouldn't think performance would really be affected but keep things efficient.
You could also place different size images in the different folders for different resolutions:
res/drawable-mdpi/my_icon.png // bitmap for medium density
res/drawable-hdpi/my_icon.png // bitmap for high density
res/drawable-xhdpi/my_icon.png // bitmap for extra high density
Supporting different size screens
we can resize the existing bitmap to any size using bitmap.createScaledBitmap use the below code.
bmp=Bitmap.createScaledBitmap(bmp,destBitmapWith, destBitmapHeight,true);
You can do like this:
ImageView imageView = (ImageView) findViewById(R.id.imageView);
imageView.setAdjustViewBounds(true);
imageView.setMaxHeight(imageView.getHeight());
imageView.setMaxWidth(imageView.getWidth());
imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
imageView.setImageBitmap(BitmapFactory.decodeFile(picturePath));
精彩评论