एंड्रॉइड में बिटमैप को ड्रा करने योग्य में कैसे बदलें?


447

मैं बिटमैप छवि को ड्रा करने योग्य में कैसे बदल सकता हूं?


2
नमस्ते, मुझे आपके प्रश्न का उत्तर इस लिंक पर मिला और मुझे इसका सही उत्तर मिला। और मैं सफलता, मुझे आशा है कि आपको सफलता मिली। बेस्ट ऑफ लक androidsnippets.com/convert-bitmap-to-drawable
Zala Janaksinh

2
योगदान थैंक्स कहने का एक शानदार तरीका है ... :) जवाब देने के संदर्भ में योगदान ... :)
फरहान

@ फरहान के ......
अभि १

जवाबों:


265

जैसे आप उपयोग करना चाहते हैं लगता है BitmapDrawable

प्रलेखन से:

एक Drawableजो एक बिटमैप लपेटता है और टाइल किया जा सकता है, बढ़ाया जा सकता है, या गठबंधन किया जा सकता है। आप BitmapDrawableएक फ़ाइल पथ, एक इनपुट स्ट्रीम, XML मुद्रास्फीति या किसी Bitmap ऑब्जेक्ट से बना सकते हैं।


21
@Deprecated Use BitmapDrawable (Resources, Bitmap) यह सुनिश्चित करने के लिए कि ड्रॉबल ने अपना लक्ष्य घनत्व सही ढंग से निर्धारित किया है।
कैमिल सेविन्

79
गैर-उपयोगी पोस्ट, गैर-उपयोगी टिप्पणी। बेहतर होगा यदि आप कुछ कोड जोड़
लें

827

यह कोशिश करो कि यह एक Bitmapप्रकार की छवि को रूपांतरित करता हैDrawable

Drawable d = new BitmapDrawable(getResources(), bitmap);

यही मैंने उम्मीद की थी!
mazend

147

बिटमैप के साथ समस्याओं की एक बड़ी मात्रा को गलत तरीके से स्केलिंग में देखने के बाद BitmapDrawable, कन्वर्ट करने का सामान्य तरीका होना चाहिए:

Drawable d = new BitmapDrawable(getResources(), bitmap);

बिना Resources reference, bitmapसही ढंग से प्रस्तुत नहीं किया जा सकता है, भले ही सही ढंग से बढ़ाया गया हो। यहाँ कई सवाल हैं जो केवल bitmapतर्क के साथ सीधे कॉल के बजाय इस पद्धति का उपयोग करके हल किए जाएंगे ।


12
कम से कम टिप्पणी क्यों अगर आप वोट करने जा रहे हैं। यह एक पूरी तरह से मान्य उत्तर है, और उन समस्याओं को हल करने के लिए अतिरिक्त जानकारी लाता है जो पेशकश किए गए अन्य उत्तरों के साथ हो सकती हैं। बिटमैप से सीधे किए गए ड्राअब में अक्सर getResources () संदर्भ के बिना स्केलिंग त्रुटियां होती हैं।
ज़ुल्क्सिया

4
यह एक अधिक सटीक उत्तर है जिस पर विचार करके @ मनोज को पदावनत किया जाता है।
रेकुड

35

आधिकारिक बिटमैप वापस लेने योग्य प्रलेखन

यह नमूना है कि बिटमैप को ड्रा करने योग्य में कैसे परिवर्तित किया जाए

Bitmap bitmap;  
//Convert bitmap to drawable
Drawable drawable = new BitmapDrawable(getResources(), bitmap);
imageView.setImageDrawable(drawable);

क्षमा करें ... मैं गंभीर नहीं था
अभि

5
आप एक ही उत्तर लिखने के बजाय उत्थान कर सकते थे।
CopsOnRoad

31

मैंने संदर्भ के साथ प्रयोग किया

//Convert bitmap to drawable
Drawable drawable = new BitmapDrawable(context.getResources(), bitmap);

5
डुप्लिकेट उत्तर।
CopsOnRoad

19

यदि आपके पास एक बिटमैप छवि है और आप इसे ड्राएबल में उपयोग करना चाहते हैं, जैसे

Bitmap contact_pic;    //a picture to show in drawable
drawable = new BitmapDrawable(contact_pic); 

20
अब यह पदावनत हो गया है। अब BitmapDrawable (Resources, Bitmap) कंस्ट्रक्टर का उपयोग करें।
स्किंगेल

1
@schlingel यह अभी भी ठीक काम कर रहा है और हम में से कई लोग इसे अपनी परियोजनाओं में उपयोग कर रहे हैं,
पीर फहीम शाह

2
यह आपके लिए अच्छा है, लेकिन तब मदद नहीं करता है जब Google अंततः इस निर्माता को मारता है और आपको सब कुछ फिर से लिखना होगा।
स्किंगेल

@schlingel हाँ, लेकिन अभी भी भीड़ में कुछ लोग इसका उपयोग करते हैं और यह एक काम करता है
पीर फहीम शाह

11

बस यह करें:

private void setImg(ImageView mImageView, Bitmap bitmap) {

    Drawable mDrawable = new BitmapDrawable(getResources(), bitmap);
    mImageView.setDrawable(mDrawable);
}

1
वह जो पूछ रहा है उसका हल नहीं
IIRed-DeathII

3

1) ड्रा करने योग्य बिटमैप:

Drawable mDrawable = new BitmapDrawable(getResources(), bitmap);
// mImageView.setDrawable(mDrawable);

2) बिटमैप के योग्य:

Bitmap mIcon = BitmapFactory.decodeResource(context.getResources(),R.drawable.icon_resource);
// mImageView.setImageBitmap(mIcon);


0

कोड का उपयोग करके स्केचवेयर ऐप में ड्रॉ करने योग्य बिट मैप

    android.graphics.drawable.BitmapDrawable d = new android.graphics.drawable.BitmapDrawable(getResources(), bitmap);
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.