2011-08-28 11 views
12

मैंने छवियों को सेट करने में इन अलग-अलग दृष्टिकोणों को देखा है लेकिन मुझे अंतर नहीं मिलता है।ImageView.setBackgroundResource और ImageView.setImageResource के बीच क्या अंतर है?

क्यों दो विधियां?

+0

क्या आप अपना प्रश्न पूछेंगे, जो –

उत्तर

34

setBackgroundResource एक छवि दृश्य की पृष्ठभूमि सेट करने के लिए है।
setImageResource ImageView की src छवि सेट करने के लिए है। को देखते हुए:

ImageView iv = new ImageView(this); 

तब:

iv.setBackgroundResource(R.drawable.imagedata); 

पूरे पृष्ठभूमि के लिए छवि फिट होगा। इसका मतलब है कि यह छवि पूरी तरह से उस पृष्ठभूमि को भरने के लिए छवि को फैलाएगी, भले ही छवि का आकार बहुत छोटा हो।

imageView.setImageResource(R.drawable.imagedata); 

छवि दृश्य में केवल छवि का आकार पर कब्जा करेगा। के लिए जो आप चाहते भी अपने imageView के लिए

android:layout_width="wrap_content" 
android:layout_height="wrap_content" 

स्थापित करने के लिए। यदि छवि का आकार ImageView से छोटा है तो शेष सीमा खाली छोड़ी जाएगी और पृष्ठभूमि दिखाई जाएगी।

+0

के बारे में बात करते हुए अलग-अलग दृष्टिकोण (2 विधियों) लेकिन क्या आपको कुछ पैडिंग या कुछ सेट करने की आवश्यकता है? – Lukap

+0

किस कारण से पैडिंग सेट करें? इसे दो परतों के रूप में सोचें: पृष्ठभूमि पीछे है और स्रोत अग्रभूमि के रूप में कार्य करता है। यदि छवि स्रोत पारदर्शी नहीं है, तो आप पृष्ठभूमि को देखने में सक्षम नहीं होंगे। –

+4

यदि आप src image के चारों ओर एक सफेद सीमा चाहते हैं, तो आप छविदृश्य के पैडिंग सेट करेंगे और उदाहरण के लिए पृष्ठभूमि संसाधन के रूप में एक सफेद रंग सेट करेंगे। अन्यथा पैडिंग की कोई आवश्यकता नहीं है। –

3

सेटबैकड्राउंड रिसोर्स एक ड्रायबल या रंग के लिए है जिसे आप छविदृश्य की पृष्ठभूमि में सेट करना चाहते हैं और आपके सेट इमेज रिसोर्स को प्रदर्शित करना है।

इसलिए सेट इमेज रिसोर्स आपके इमेजव्यू के सामने की ओर किसी भी संसाधन को जोड़ने के लिए है। इस उदाहरण को आजमाएं और अंतर देखें। Android Gallery, ImageView Example । यह एक दो परत प्रभाव है, बैकसाइड (सेटबैकग्राउंड रिसोर्स) और फ्रोंसाइड (setImageResource)।

+0

"androidpeople.com" का आपका लिंक मर चुका है। लेकिन मैं छवि को "दो परत प्रभाव" से क्या मतलब कर सकता हूं। धन्यवाद! – winklerrr

0

setBackgroundResource एक छवि दृश्य की पृष्ठभूमि छवि सेट करता है। एक्सएमएल विशेषता है: android:background

setImageResource छवि दृश्य में प्रदर्शित छवि को सेट करता है। एक्सएमएल विशेषता है: android:src

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