अद्यतन: एकाधिक डिवाइस स्क्रीन आयाम एक लाल हेरिंग है - समस्या यह है कि स्क्रीन स्क्रीन भरने के लिए छवि ठीक से स्केल नहीं होती है - इवान के उत्तर पर टिप्पणियां देखें।डिवाइस स्क्रीन आयाम स्केल किए गए छवि दृश्यों पर अजीब प्रभाव है
मैं एक छवि के साथ एक लेआउट फ़ाइल है:
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/image"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="centerCrop" />
तो मैं एक drawable है, जो छोटा है और को बढ़ाया जाना चाहिए आवंटित:
setContentView(R.layout.image_story);
ImageView image = (ImageView)findViewById(R.id.image);
image.setImageDrawable(s.image);
यहाँ है कि यह कैसे दो पर प्रदान की गई है विभिन्न स्क्रीन आयामों के साथ एवीडी। ये वही होना चाहिए (नीचे विस्तृत प्रश्न)। बड़ी छवियों के लिए खेद है।
scaleType साथ= centerCrop:
centerInside
AVDs साथ
:
संपादित करें:
layout_height = "fill_parent" और scaleType = साथ"centerInside"
मैं मूलभूत मूल्यों के साथ एक 2.1 AVD है, तो स्क्रीन छोटा होता है , और यह बिल्कुल अपेक्षित रूप से काम करता है- चौड़ाई को भरने के लिए छवि को बढ़ाया जाता है, और दृश्य ऊंचाई स्केल की गई ऊंचाई पर लपेटा जाता है।
एक लंबे समय तक स्क्रीन के साथमेरे Droid बायोनिक पर, और एक ही स्क्रीन आयामों के साथ किसी भी AVD पर, इस छवि को काम नहीं करता चौड़ाई को भरने के लिए बढ़ाया है, लेकिन दृश्य मूल पूर्व करने के लिए लपेटा जाता है स्केल छवि ऊंचाई, तो ऊपर और नीचे फसल बंद कर रहे हैं।
मुझे नहीं पता कि डिवाइस स्क्रीन पहलू अनुपात पर इसका असर क्यों होगा। मैंने लेओनिक पर काम करने के लिए लेआउट पैरामीटर और स्केल प्रकारों के अनगिनत संयोजन की कोशिश की है। सब कुछ ठीक उसी तरह काम करता है जैसा कि छोटी स्क्रीन पर अपेक्षित है, न कि बड़े पैमाने पर। अगर मैं छवि ऊंचाई को dp
में स्पष्ट रूप से सेट करता हूं, तो यह अपेक्षित कार्य करता है, लेकिन मुझे कभी नहीं पता कि छवि (या स्क्रीन) के आयाम क्या होंगे। कोई सुझाव?
स्क्रीनशॉट सहायक हो सकते हैं क्योंकि मुझे पूरा यकीन नहीं है कि मैं सही चीज़ को चित्रित कर रहा हूं। – CaseyB
स्क्रीनशॉट जोड़ा- क्या वह मदद करता है? छोटी स्क्रीन छवि को स्केल करने में अपेक्षित परिणाम दे रही है। इमेज व्यू का आकार बदलने के लिए बड़ा असुरक्षित आकार का उपयोग कर रहा है। –
क्या आप वाकई layout_height = wrap_content चाहते हैं? –