Note that there are some explanatory texts on larger screens.

plurals
  1. POOut of memory while creating bitmaps on device
    primarykey
    data
    text
    <p>im having problems with high resolution images.</p> <p>Im using nodpi-drawable folder for 1280x720 images, and using this code to scale it.</p> <pre><code>public static Drawable scaleDrawable(Drawable d, int width, Activity cxt) { BitmapDrawable bd = (BitmapDrawable)d; double oldWidth = bd.getBitmap().getWidth(); double scaleFactor = width / oldWidth; int newHeight = (int) (d.getIntrinsicHeight() * scaleFactor); int newWidth = (int) (oldWidth * scaleFactor); Drawable drawable = new BitmapDrawable(cxt.getResources(),MainScreen.getResizedBitmap(bd.getBitmap(),newHeight,newWidth)); BitmapDrawable bd2 = (BitmapDrawable)drawable; return drawable; } public static Bitmap getResizedBitmap(Bitmap bm, int newHeight, int newWidth) { int width = bm.getWidth(); int height = bm.getHeight(); float scaleWidth = ((float) newWidth) / width; float scaleHeight = ((float) newHeight) / height; // create a matrix for the manipulation Matrix matrix = new Matrix(); // resize the bit map matrix.postScale(scaleWidth, scaleHeight); // recreate the new Bitmap Bitmap resizedBitmap = Bitmap.createBitmap(bm, 0, 0, width, height, matrix, false); return resizedBitmap; } </code></pre> <p>I use that code to scale images to screen witdh so if the screen is 320x480 the image will scale to 320 and keep proportions, i dont care if image go out of screen from bottom.</p> <p>All its working fine, but when trying in a xhdpi device specifically a Samsung Galaxy Note 2 with a screen of exactly 720x1280.</p> <p>It crash with Out Of Memory Exception in the line:</p> <pre><code>Bitmap resizedBitmap = Bitmap.createBitmap(bm, 0, 0, width, height, matrix, false); </code></pre> <p>I cant understand why, the image should be scaled from 720 to 720 but my code must be really bad optimized or something.</p> <p>I havent tried on a 1080x1920 device but it seems it will crash too.</p> <p>Someone can see something bad when looking at the code?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload