2012-07-27 14 views
14

इम एंड्रॉयड में एक नौसिखिया के लिए लोड हो रहा है बिना बिटमैप चौड़ाई और ऊंचाई प्राप्त करें, तो मुझे पता है कि वहाँ किसी भी तरह से स्मृति में बिटमैप लोड किए बिना एक बिटमैप के आयाम प्राप्त करने के लिए है चाहते हैं। ??स्मृति

उत्तर

28

आप अधिक जानकारी के लिए स्मृति

BitmapFactory.Options bitmapOptions = new BitmapFactory.Options(); 
bitmapOptions.inJustDecodeBounds = true; 
BitmapFactory.decodeStream(inputStream, null, bitmapOptions); 
int imageWidth = bitmapOptions.outWidth; 
int imageHeight = bitmapOptions.outHeight; 
inputStream.close(); 

में बिटमैप पिक्सेल लोड किए बिना छवि चौड़ाई और ऊंचाई पाने के लिए inJustDecodeBounds साथ BitmapFactory.Options सेट कर सकते हैं:

सार्वजनिक बूलियन inJustDecodeBounds

चूंकि: एपीआई स्तर 1 यदि सत्य पर सेट किया गया है, डीकोडर शून्य (कोई बिटमैप) वापस नहीं करेगा, लेकिन बाहर ... फ़ील्ड अभी भी हो सेट करें, कॉलर को अपने पिक्सल के लिए मेमोरी आवंटित करने के लिए के बिना बिटमैप से पूछताछ करने की अनुमति दें।

http://developer.android.com/reference/android/graphics/BitmapFactory.Options.html#inJustDecodeBounds

+1

नहीं, ठीक काम करता है क्योंकि इस प्रणाली स्क्रीन घनत्व के बारे में बिटमैप स्केल कर सकते हैं जब आप अंततः बिटमैप लोड करने के लिए की जरूरत है। यह हमेशा सत्य होता है अगर BitmapFactory.Options.inScaled = false – Tobliug

संबंधित मुद्दे