2013-01-11 13 views
5

की पृष्ठभूमि drawable मिल getBackgound() रिटर्न BitmapDrawableदृश्य

Log.d(null,"drawable: " + v.getBackground()); 

कैसे R.drawable.xxx के रूप में drawable पाने के लिए?

+1

क्या आप अपने पृष्ठभूमि संसाधन की आईडी जानना चाहते हैं? –

+0

मैं आकर्षित करने के लिए चाहता हूं कि मैंने अपने विचार में असाइन किया। इसका उपयोग करके मेरे दृश्य में पृष्ठभूमि बनाने के बाद: setBackgroundDrawable (R.drawable.pic) - मैं R.drawable.pic का मान प्राप्त करना चाहता हूं ... क्या यह संभव है? – user1623176

+0

नीचे मेरा उत्तर देखें। उम्मीद है कि यह आपकी मदद करेगा –

उत्तर

-3

जब भी आप पृष्ठभूमि सेट करते हैं, तो एक ड्रायबल सदस्य वर्ग में R.drawable.pic सेट करें।

v.setBackgroundDrawable(R.drawable.pic); 
int myDrawable = R.drawable.pic; 
+0

'R.drawable.pic' एक पूर्णांक मान है, न कि 'Drawable' –

+0

क्या आपने getDrawable() का परीक्षण किया था? –

+1

विधि सेट बैकग्राउंड ड्रायबल (ड्रायबल) प्रकार दृश्य में तर्क (int) के लिए लागू नहीं है। और intValue() भी क्या है? – user1623176

2

देखें वर्ग कि विधि प्रदान नहीं करता है, तो आप उपयोग कर सकते हैं:

myView.setBackgroundResource(int resId);drawable आप

सेट करना चाहते हैं की आईडी प्राप्त करता है लेकिन इस विधि का कोई गेटर है, केवल :

myView.getBackgroundDrawable();दृश्य में निर्धारित ड्रायबल लौटाता है।

आप अपना खुद का एक बनाने के लिए व्यू बढ़ा सकते हैं, और सेटबैकग्राउंड रिसोर्स को ओवरराइड कर सकते हैं, आईडी को एक असाधारण var के अंदर सहेज सकते हैं, और फिर सुपर विधि को कॉल कर सकते हैं। परिचित var को वापस करने के लिए गेटटर को परिभाषित करें और आपको वह फ़ंक्शन मिलेगा जो आप चाहते हैं।

+0

मेरे पास 2 बटन हैं जिनकी पृष्ठभूमि समान है। लेकिन जब मैं अपनी पृष्ठभूमि को खींचने योग्य बनाता हूं, तो यह अलग होता है। कौन सी संपत्ति उन्हें वही बनाती है (एक बटन होने के अलावा)? – user1623176

+0

दो ड्रॉबल्स ऑब्जेक्ट्स, मेरे विश्वास के बराबर सही नहीं होंगे, लेकिन आप अपना वजन देख सकते हैं, या अपने स्वयं के बटन बना सकते हैं जैसे मैंने आईडी – noni

+0

की जांच करने के लिए कहा है इसका मतलब क्या है इसका वजन जांचें? – user1623176

1
view.getBackgroundDrawable(); 

पृष्ठभूमि को खींचने योग्य बनाने के लिए इसका उपयोग करें। यह वापस आ जाएगी drawable

संपादित

इस काम के लिए नीचे दिए गए जेली बीन संस्करणों, जब इस उत्तर

न्यू संपादित

लिखा गया था संस्करणों के लिए अब इस विधि नवीनतम संस्करण में पदावनत किया गया है में जेलीबीन के बाद

view.getBackground() 

यदि कोई ड्रॉबल्स की तुलना करना चाहता है तो इस answer

+0

यह काम नहीं करता है, यह एंड्रॉइड एपीआई में नहीं है। जेली बीन के लिए –

+0

समाधान? – msangel

+0

@msangel view.getBackground() का प्रयास करें। मुझे बताएं कि यह काम करता है तो मेरा जवाब अपडेट होगा https://stackoverflow.com/a/27730795/1450401 – edwin