2010-05-30 20 views
7

स्केल करता है, मुझे लगता है कि मैं अपनी छवि छवि को मूल स्रोत में अपनी स्रोत छवि प्रदर्शित करने के लिए नहीं देख पा रहा हूं। ImageView इस तरह दिखता है:एंड्रॉइड: ImageView स्रोत छवि

<ImageView 
android:id="@+id/Logo" 
android:src="@drawable/logo" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
> 
</ImageView> 

स्रोत छवि 140 पिक्सल चौड़ा है, फिर भी नेक्सस वन की स्क्रीन है, जो 480 पिक्सेल चौड़ी है यह आधी चौड़ाई का उपयोग करता है पर। चौड़ाई और ऊंचाई के लिए पीएक्स या डीपी में पूर्ण मूल्यों का उपयोग कुछ भी नहीं बदलता है। छवि अपस्कलिंग से बहुत एंटीअलाइज्ड दिखती है। यह क्यों हो रहा है और मैं इसे कैसे रोक सकता हूं?

उत्तर

7

अधिकतर, एंड्रॉइड छवि को स्केल कर रहा है, क्योंकि आपने यह नहीं बताया था कि आप बड़ी स्क्रीन का समर्थन कर रहे थे। अपने मैनिफेस्ट में suitable <supports-screens> element जोड़ें और देखें कि क्या इससे मदद मिलती है।

+0

मैंने अभी आपके सुझाव की कोशिश की है और यह निश्चित रूप से इसके साथ कुछ करने के लिए है। आपका बहुत बहुत धन्यवाद! छवि में अब "सही" आकार है यदि मैं छवि के आयामों का उपयोग लेआउट_विड्थ और लेआउट_हेइट के लिए पूर्ण पिक्सेल मान के रूप में करता हूं। अगर मैं wrap_content का उपयोग करता हूं तो छवि पहले की तरह बड़ी है, जैसा कि लगता है, वही आकार भी है जब मैं छवि के आयामों का उपयोग आयाम के रूप में "डीपी" के साथ करता हूं। मुझे लगता है कि यह सिर्फ wrap_content काम करता है। उस स्थिति में यह समझ में आता है कि छवि को नेक्सस जैसी उच्च घनत्व स्क्रीन वाले डिवाइस पर बहुत बड़ा प्रदर्शित किया जाता है। –

+0

अभी भी अजीब बात यह है कि यदि मैं layout_width और layout_height के लिए wrap_content का उपयोग करता हूं लेकिन maxWidth और maxHeight के लिए पूर्ण पिक्सेल मानों का उपयोग करता है जिसका कोई प्रभाव नहीं पड़ता है। चूंकि पिक्सेल आयामों का उपयोग किसी भी तरह से निराश होता है, इसलिए मुझे आश्चर्य होता है कि छवि को ऊपर उठाने से रोकने के अन्य तरीके हैं? –

+1

आप शायद अपनी छवि के दो संस्करण चाहते हैं, एक मध्यम घनत्व स्क्रीन के लिए और एक उच्च घनत्व स्क्रीन के लिए। अपनी छवि को 'res/drawable-hdpi /' में डालने का प्रयास करें और देखें कि क्या इससे मदद मिलती है। – CommonsWare

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