Android – largeur et hauteur du bitmap sans le charger

Je dois avoir la largeur et la hauteur d'un bitmap, mais l'utilisation de ce fait donne une exception hors mémoire:

Resources res=getResources(); Bitmap mBitmap = BitmapFactory.decodeResource(res, R.drawable.pic); BitmapDrawable bDrawable = new BitmapDrawable(res, mBitmap); //get the size of the image and the screen int bitmapWidth = bDrawable.getIntrinsicWidth(); int bitmapHeight = bDrawable.getIntrinsicHeight(); 

J'ai lu la solution à la question Obtenir la taille et la taille du bitmap sans charger dans la mémoire, mais quel serait le inputStream ici?

  • Position du carnet de JavaScript
  • Comment envoyer un ping au client Eclipse Paho MQTT?
  • Comment créer un effet de graphiques de particules de feu d'artifice sur Android
  • Liaison de données Android - 'Aucun identifiant de ressource trouvé pour l'attribut'
  • Liste des filtres d'intention pour les paquets installés
  • L'application de débogueur Android Studio s'effondre avec InterruptedException
  • Android.mk vs Application.mk
  • Android Genymotion VM logcat se transforme en boucle infinie
  • -bash: android: commande introuvable sur Mac OSX
  • Android: Comment dessiner des itinéraires Google Maps API V2 de l'emplacement actuel à destination
  • Actualiser le médiateur Android en utilisant adb
  • Erreur: Impossible de trouver: com.android.support:support-v4:20.0.+
  • 2 Solutions collect form web for “Android – largeur et hauteur du bitmap sans le charger”

    Vous devez également spécifier quelques BitmapFactory.Options :

     BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; BitmapFactory.decodeResource(getResources(), R.id.myimage, options); int imageHeight = options.outHeight; int imageWidth = options.outWidth; 

    bDrawable ne contiendra pas de tableau d'octets bitmap. Repris à partir d' ici : Setting the inJustDecodeBounds property to true while decoding avoids memory allocation, returning null for the bitmap object but setting outWidth, outHeight and outMimeType. This technique allows you to read the dimensions and type of the image data prior to construction (and memory allocation) of the bitmap. Setting the inJustDecodeBounds property to true while decoding avoids memory allocation, returning null for the bitmap object but setting outWidth, outHeight and outMimeType. This technique allows you to read the dimensions and type of the image data prior to construction (and memory allocation) of the bitmap.

    Utilisez ceci

     BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; BitmapFactory.decodeResource(getResources(), R.id.myimage, options); int imageHeight = options.outHeight; int imageWidth = options.outWidth; 

    Voir http://developer.android.com/training/displaying-bitmaps/load-bitmap.html

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.