Какие папки макета необходимы для поддержки всех Android-устройств?

Я разрабатываю приложение калькулятора, которое имеет относительную компоновку для портретного режима. Все кнопки и текстовые элементы размещаются в этой единственной относительной компоновке и одинаковой относительной компоновке для режима Land. Я уже почти 15 дней копаю веб-сайт, но ничего не нашел. Мое приложение также поддерживает Таблетки. MinSDKVer – 14, а Target – v21.

В настоящее время я пытаюсь использовать эти папки Layouts

1: layout-sw400dp (предназначен для заметок 3 и Mate 7)

2: layout-sw600dp (предназначен для 7-дюймовых планшетов)

3: layout-sw720dp (предназначен для 8,9 "и 10-дюймовых планшетов)

4: Схема-малый ldpi

5: Схема-нормальная ldpi

6: Схема нормальный-MDPI

7: layout-large-mdpi (предназначен для 480 × 800 телефонов с экраном> 5 ", как Pantech Sky Vega Note)

8: Схема-нормальный ИПЧР

9: layout-large-hdpi (предназначен для Galaxy Note 2, Galaxy Note и Galaxy Mega)

10: Схема-нормальная xhdpi

11: Схема-нормальная xxhdpi

12: layout-large-xxhdpi (предназначен для Galaxy Note 4)

13: layout-normal-xxxhdpi (предназначен для Nexus 6 и для другого QFHD-телефона)

Все эти макеты имеют режим земли.

Проблема возникает при размещении (layout-sw400dp). Nexus 6, Note 4, Note 2, Galaxy Mega и Large 480 × 800 начали использовать этот макет, а не планируемые макеты.

Это происходит потому, что swdp имеет более высокий приоритет, чем layout-normal-xxxx или layout-large-xxxx.

Примечание 3 и Mate 7 – 400dpi устройств, поэтому я разместил layout-sw400dp. До этого все устройства работали отлично, за исключением примечаний 3 и Mate 7.

И другая проблема – устройства с разрешением 540 × 960.

Я пробовал макет-320dp. Используя эти устройства xhdpi, устройства xxhdpi начали использовать этот макет.

Я также пробовал этот макет для 540 × 960. Но они не работали даже после создания папки seprate для layout-long-port-800 × 480.

1: Схема-h960dp-w540dp

2: макет длиной порт-960 × 540

3: Схема нормальный-960 × 540

Я прочитал все экраны с Android Virtual Device Manager, создав различные устройства с актуальными спецификациями.

Я попытался вручную настроить макет для 540 × 960 устройств в java-файле и преуспеть, но я не хочу этого делать, и я тоже не хочу использовать линейный макет.

Я тщательно изучил «Поддержка различных экранов Android и предоставление ресурсов».

Пожалуйста, сообщите имя всех необходимых папок для макета для поддержки всех устройств Android или любого другого эффективного способа сделать это с помощью java.

Я загрузил все файлы ресурсов на Mediafire, вы можете скачать калькулятор Layout.zip

Любые предложения и решения будут оценены Спасибо заранее

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

Solutions Collecting From Web of "Какие папки макета необходимы для поддержки всех Android-устройств?"

Вместо использования так много папок макета, используйте следующие папки

Для смартфонов и phablets

  • макет-MDPI
  • макета ИПЧР
  • макета xhdpi
  • макета xxhdpi

Для 7-дюймовых планшетов

  • макета sw600dp

Для 10-дюймовых планшетов

  • макета sw720dp

Если вы сосредоточитесь на создании так много папок макета и, в конечном итоге, так много макетов, это станет громоздким процессом для каждого нового устройства / экрана, добавленного в семейство Android.

Вместо этого сосредоточьтесь на оптимизации макетов, которые вы создаете, чтобы вписаться в эти ведра. Такие, как предоставление значений в dp и предотвращение предоставления жестко закодированных значений для размера / поля / заполнения, использование файлов размеров эффективно и т. Д.

Надеюсь, это сэкономит ваши лишние усилия.

Вместо использования большого количества простых папок макета используйте следующие папки.

Для смартфонов

1.layout: Нормальный

2.layout-hdpi: используйте Nexus one, Nexus S

3.layout-xhdpi: используйте Nexus 4

4.layout-xxhdpi: используйте Nexus 5

5.layout-xxxhdpi: используйте Nexus 6

Для планшетов

1.layout-large: используйте Nexus 7

2.layout-xlarge: используйте Nexus 9

3.layout-xxlarge: используйте Nexus 10

Я использую только три папки

– layout-sw600dp (для планшетов).
– layout-sw360dp (для телефонов среднего размера).
– макет (для всех с наименьшей шириной менее 360).

Для разных размеров экрана Ниже приведен список папок ресурсов в приложении, которое предоставляет различные схемы компоновки для разных размеров экрана для экранов малых, средних, высоких и сверхвысоких частот.

 res/layout/my_layout.xml // layout for normal screen size ("default") res/layout-small/my_layout.xml // layout for small screen size res/layout-large/my_layout.xml // layout for large screen size res/layout-xlarge/my_layout.xml // layout for extra large screen size res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation res/drawable-mdpi/my_icon.png // bitmap for medium density res/drawable-hdpi/my_icon.png // bitmap for high density res/drawable-xhdpi/my_icon.png // bitmap for extra high density 

Следующий код в манифесте поддерживает все dpis.

 <supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" android:anyDensity="true" /> 

Подробнее см. Здесь