2011-09-19 10 views
9

मेरे पास RelativeLayout ऑब्जेक्ट है और गतिशील रूप से बनाई गई बिटमैप ऑब्जेक्ट के साथ पृष्ठभूमि छवि को गतिशील रूप से बदलना चाहता है (यह गतिशील रूप से इसके रंग को बदलता है)।बिटमैप के साथ relativelayout.setBackgroundDrawable() का उपयोग कैसे करें?

मैंने देखा कि जब मैं RelativeLayout ऑब्जेक्ट की पृष्ठभूमि छवि को अपडेट करना चाहता था तो मैं केवल setBackgroundDrawable() चुन सकता हूं जिसके लिए एक ड्रायबल ऑब्जेक्ट को पैरामीटर के रूप में आवश्यक है।

मेरा सवाल है, मैं गतिशील रूप से बनाई गई बिटमैप ऑब्जेक्ट को एक ड्रायबल ऑब्जेक्ट में कैसे परिवर्तित कर सकता हूं?

+0

आपकी छवि स्थानीय स्रोत या यूआरएल से आती है? –

उत्तर

19

BitmapDrawable(obj) परिवर्तित बिटमैप वस्तु इस तरह से यह कर सकते हैं।

प्रयास करें:

RelativeLayout relative = (RelativeLayout) findViewById(R.id.relative1); 
Drawable dr = new BitmapDrawable(bit); 
(view).setBackgroundDrawable(drawable); 

मुझे आशा है कि यह आप में मदद मिलेगी।

+1

नया बिटमैप ड्रायबल (बिटमैप) बहिष्कृत है; नया बिटमैप ड्रायबल (getResources(), बिटमैप) –

+0

का उपयोग करें यह उत्तर 3 साल से पहले दिया गया है। इसलिए पुरानी विधियों को खत्म करने का उच्चतम मौका हो सकता है क्योंकि नई विधियां तस्वीर में आईं। उस समय यह सही था। – Siten

3

इस प्रयास करें,

Drawable drawable = new BitmapDrawable(bitmap); 
6

आप drawable वस्तु में

Drawable drawable = new BitmapDrawable(bitmap); 
RelativeLayout r; 
r = (RelativeLayout) findViewById(R.id.relativelayout1); 
ll.setBackgroundDrawable(drawable); 
2
RelativeLayout rl=(RelativeLayout) findViewById(R.id.main1); 
Bitmap myImage = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher); 
Drawable dr = new BitmapDrawable(myImage); 
rl.setBackgroundDrawable(dr); 
0

// RelativeLayout के लिए संदर्भ बनाएं

RelativeLayout layout = (RelativeLayout) findViewById(R.id.rl); 

// लेआउट संदर्भ के लिए पृष्ठभूमि के लिए निम्न विधि का उपयोग कर सेट

Drawable drawable = getResources().getDrawable(R.drawable.bg); 
layout.setBackground(drawable); 

नोट: R.id.rl की आईडी है सापेक्ष Layout

R.drawable.bg आईडी छवि को drawabl में ई फ़ोल्डर

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