سؤال

لدي التباس فيما يتعلق متعدد الشاشات الدعم في الروبوت.لقد ذهبت من خلال المادة على شاشة متعددة الدعم في الروبوت المطور المنتدى.سؤالي هو: إذا كان التطبيق قد 15-20 الصور التي تحتاج إلى أن تظهر على كامل الشاشة على شاشة الجهاز.الآن إذا كنت ترغب في دعم جميع الشاشات ما يجب أن أضع في ثلاثة drawable المجلدات لدبي, مدبي & هدبي.هنا ما فعلت

في لدبي - صور بدقة 240 × 320 مدبي - صور 320x480 reolution هدبي - صور 720x800 القرار.(أنا باستخدام نفس الكثافة لكل ثلاثة القرار) أعتقد أن هذا ليس هو النهج الصحيح.

بالضبط ما يجب أن أقوم به ؟ وضع الصور من مختلف القرار في drawable-ldpi, drawable-مدبي & drawable-hdpi أعلاه أو يجب استخدام الصور من كثافات مختلفة 120 نقطة في البوصة ، 160 نقطة في البوصة & 240 نقطة في البوصة.إذا كنت تستخدم الصور بكثافات مختلفة ما يجب أن يكون القرار(يجب 120 نقطة في البوصة القرار 240 × 320 و 160 نقطة في البوصة 320x480 & 240 نقطة في البوصة القرار 480x800).أو إذا أنا باستخدام مختلف dpi الصور الخاصة بهم القرار يجب أن يكون نفس(320x480) لجميع الكثافة .

التحيات ، أنوج

هل كانت مفيدة؟

المحلول

من الناحية المثالية ، يجب أن يكون لديك رسم مع كثافات مختلفة لشاشات مختلفة. يمكنك استخدام الأحجام التي ذكرتها لصورك. ولكن يمكنك أيضًا توفير صور عالية الدقة فقط وسيتم تقليصها لمطابقة كثافة شاشة جهاز المستخدم.

أيضًا إذا كنت تريد أن تظهر الصور في ملء الشاشة ، فربما يكون لديك إصدارات مختلفة من هذه الصور لتوجهات المناظر الطبيعية والتصوير ولشاشات طويلة وليس طويلة.

وأخيرا يمكنك استخدام ImageView أداة لتوسيع نطاق الصورة المناسبة على أجهزة مختلفة.

نصائح أخرى

Anujprashar لا يوجد من السهل الإجابة على سؤالك.كثافة مختلفة المواصفات (هدبي ، مدبي ، لدبي) تشير فقط إلى المدى المتوسط الكثافة (أيهدبي حوالي 240 نقطة في البوصة).ومع ذلك ، هدبي يمكن أن تشير إلى عدد كبير من القرارات المختلفة (مثلا ، موتورولا الروبوت هو هدبي القرار 480x854;نيكزس واحد هو هدبي القرار 480x800).لذلك لا يوجد حجم ثابت صورة يمكنك استخدام لتناسب تماما في جميع الأجهزة كامل الشاشة.

اقتراحي هو إذا كان ذلك ممكنا ، إما تجنب استخدام تخطيط يتطلب الصور تكون نفس حجم الشاشة ، أو بدلا من ذلك تقديم صورة أكبر من غالبية القرارات التي تستهدف الكثافة (مثلا ، 500x900) وترك هوامش إضافية قد يتم اقتصاص من (أعتقد أنها تنزف, إذا كنت على دراية أن مفهوم الطباعة).

أو ببساطة أكثر, إذا كنت لا تتطلب منهم أن يكون عرض 1:1 في الأصل بكسل القرار, يمكنك ببساطة تعيين scaleType من ImageView إلى centerCrop, و العرض و الارتفاع fill_parent.وهذا التوسع (أو تتكثف) الصورة لتناسب حاوية الزرع قبالة بكسل إذا كانت نسبة الارتفاع غير صحيح.

أكثر صعوبة (و أقل كفاءة) الطريقة سيكون لديك صورة مختلفة لكل شاشة القرار ، وطريقة في onCreate الخاص() لاسترداد أبعاد الشاشة وتعيين الصورة وفقا للقيم التي تحصل مرة أخرى.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top