Поддержка Android Multiscreen в Android: 540x960 проблема

Мое приложение поддерживает 3 типа плотности ldpi (120), mdpi (160), hdpi (320) и для этого у нас есть три папки для ресурсов (ldpi, mdpi, hdpi).

Но моя проблема возникает в HTC Sensation XE (540x960) с плотностью ~ 256 dpi. И мои ресурсы растягиваются.

В файле манифеста

<code><supports-screens android:xlargeScreens="false" /> 
</code>

означает, что я не поддерживаю экран xlarge, поэтому 540x960 имеет высокую плотность ?? Как я могу преодолеть эту проблему ???

Проблема поддержки Android Multiscreen говорит & quot;You can also use a combination of density and size qualifiers but that still leaves some room for two different resolutions falling into the same bucket.& Quot;

Какое имя должно быть у папки drawble для такого разрешения? или есть какой-либо другой способ, чтобы замкнуть эту проблему.

EDIT :  Моя проблема не с макетом, моя проблема 540x960 в HDPI, но мои hdpi-рисунки связаны с 480x800

Помоги мне..

Заранее спасибо..

Ответы на вопрос(3)

что вы разработали свои растровые изображения для определенного размера экрана, а не плотности экрана.

Проще говоря, выshould not do that, Существует огромное количество различных форм-факторов и размеров экрана, и вы не можете надеяться, что размер графики будет соответствовать всем им. Таким образом, вы исправили эту проблему для экранов 540x960 ... что тогда с вашими пользователями, которые используют дисплеи с разрешением 480x854 (большинство устройств Motorola с разрешением HDMI)? Будете ли вы включать другую графику для дисплеев 1024x720 и 1280x720, если вы разрабатываете для этого? А как насчет 1280x800?

Конечно, решение этих проблем может быть проблематичным, но именно такую цену мы платим за разнообразие устройств. И Google предоставил нам достаточное количество мощных инструментов для решения этой проблемы.

Когда вы разрабатываете приложение для Android, вы должны думать о дизайне так, как если бы вы проектировали веб-сайт, а не программу для настольного компьютера (или IOS). Все (или большинство) приемов, которые вы используете для разработки веб-сайта, также применимы и здесь - плюс у вас есть инструменты для определения плотности и 9.patch.

И если вы действительно не можете настроить свою графику / макет на экране, не испортив его, вы всегда можете центрировать макет на дисплее (или выровнять его по левому или правому краю, в зависимости от того, что, по вашему мнению, выглядит лучше).

Редактировать:

Как я уже упоминал выше, ядро гибкого дизайна пользовательского интерфейса в Android - думать о вашем приложении как о веб-сайте. У Романа Нурика есть статья, обсуждающая это в блоге Android.

http://android-developers.blogspot.com/2011/09/thinking-like-web-designer.html

Кроме того, он в основном покрыт сайтом Android и т. Д.

http://developer.android.com/training/multiscreen/index.html

Использование правильных макетов и изображений с 9 патчами (не всегда - иногда статические изображения лучше) позволит вам создавать дизайны, которые хорошо смотрятся на всех телефонах. Но вы должны понимать, что, как и веб-сайт, разработанный в браузере, вы не можете и не можете иметь 100% контроль над тем, как все отображается на каждом устройстве. Что вам нужно сделать, так это то, что он по-прежнему доступен и хорошо выглядит даже при отображении на устройстве, которое вы не ожидали заранее.

on XE (540x960):

res/layout-w540dp-h960dp/layout.xml 

это будет использоваться для выбора макета для этого устройства, а для рисования он будет выбирать изображение из hdpi, потому что на этом сайте разработчика 256 dp входят в диапазон hdpi.http://developer.android.com/guide/practices/screens_support.html.

Надеюсь, что это поможет вам.

экрана. Расчет здесь ...

dpi = sqrt (540 ^ 2 + 960 ^ 2) / 4,3 "(размер устройства) = ~ 256 dp = px / (dpi / 160) = 540 / (dpi / 160) = 330

Drawable будет назван drawable-sw330dp. Я проверил это. И это хорошо работает. Никаких проблем с другими чертежами тоже нет. Макет будет layout-sw330dp

Или вы можете попробовать это по drawable-sw540p. Я еще не проверял это. Но я думаю, это будет хорошо работать. Макет будет layout-sw540p

ВАШ ОТВЕТ НА ВОПРОС