Вопрос по android – Android: поддержка нескольких экранов

8

Я пытаюсь сделать приложение в Android. Я хочу, чтобы он мог работать на нескольких телефонах с разным размером экрана, поэтому я училсяподдержка нескольких экранов на разработчиков и в соответствии с этим мне нужно создать 3 разных xml файла для поддержки трех разных размеров экрана, а также 3 разных типа изображений для каждого типа xml файла. Но в блоге я получаю идею сделать это с помощью метода текущего размера экрана. Так что я не совсем понимаю, что мне делать. средства, которые оптимизированы и способ повышения производительности. И какой из них будет лучше для поддержки всех типов экранов (кроме очень больших экранов)

Вы можете использовать разные xml на основе устройства для res-папки layout-small (320x240,240x320) для разработки устройств с небольшим экраном, таких как layout-medium (320x480), layout-large и layout-xlarge и так далее ...! Dinesh
Android автоматически выберет правильное расположение, чтобы использовать для типа устройства ASceresini
а как насчет изображений мне нужно, чтобы создать три типа изображений в трех папках рисования (одно имя в каждой папке) и Android будет выбирать изображение в соответствии с макетом user1343631
поэтому Android автоматически выберет правильный файл XML в соответствии с размером экрана телефона или мне нужно изменить код Java или создать 3 типа файлов Java user1343631
Я предлагаю вам создать три разных макета для каждого типа формата экрана. Это по умолчанию способ, которым Android построен, чтобы обрабатывать различные размеры экрана для многочисленных устройств. Это также позволяет вам отделять стили и дизайн от кода. ASceresini

Ваш Ответ

4   ответа
1

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

Смотри мой этот ответ

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

Error: User Rate Limit Exceededstackoverflow.com/questions/34378238/landscape-mode-for-app
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
0

вы можете использовать dp и иметь только один xml для всех экранов. Но вы должны поддерживать иконки для всех экранов.

Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
0

что это менее запутанно, чем Дэвид Оганян, но забыл что-то сказать ... Когда это возможно, используйте стили в xx_layout, изображениях и т. Д., Чтобы у вас в папках было 1 файл layout.xml и 3 файла стилей: values, values-small, layout-large.

По крайней мере, для меня это менее запутанно, чем открытие 30 различных файлов макетов.

5

Определение высоты, ширины и других параметров в файле XML является лучшим вариантом, чем во время выполнения. Потому что XML-файлы работают как метаданные (носитель данных) для деятельности и избегают путаницы при вызове метода onCreate. Плюс, создавайте разные папки для качества изображения (hdpi, xhdpi, ndpi, ldpi)

7-дюймовое устройство использует MHPI 10-дюймовые устройства используют hdpi и xhdpi В то время как вкладки NEXUS используют hdpi и xhdpi независимо от их размера. Мобильные телефоны используют ldpi и ndpi.

Прелесть заключается в том, что Android-устройство автоматически выбирает подходящий контент при его обнаружении, то есть макет и изображение. Если он не найден, он сначала выполняет поиск в других папках макета, например, макет, не найденный в папке x-large, затем он ищет в большом, а затем в среднем, маленьком, который из них подходит лучше всего (если макет не найден в его папке). соответствующая папка).

Nexus создаст много проблем для вас. Чтобы проверить, как ваш макет будет выглядеть на разных устройствах, попробуйте использовать параметры, которые сообщают вам, как он будет выглядеть на этом устройстве с такой шириной по высоте, представленной в графическом макете (вид а).

Error: User Rate Limit Exceededstackoverflow.com/questions/34378238/landscape-mode-for-app

Похожие вопросы