Почему официальное приложение Google IO имеет только drawables, которые поддерживают hdpi и при этом отлично смотрятся на моем маленьком ldpi устройстве? - PullRequest
2 голосов
/ 08 декабря 2010

Я просматривал исходный код Google IO App с открытым исходным кодом для Android и выяснил, что в "drawables-hdpi" у них есть только drawables (только с 2 исключениями из 50 или около того).

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

Что меня еще больше смущает, так это то, что на моем маленьком экране с низким разрешением (SE Xperia X10 Mini) он отлично смотрится.

Может кто-нибудь прояснить мою путаницу.

Ответы [ 3 ]

4 голосов
/ 09 августа 2012

Это новый ответ, потому что он не может быть оставлен как комментарий из-за его длины ... Android позаботится о масштабировании. Поэтому нет необходимости предоставлять различные экраны, если вы просто просто масштабируете изображения самостоятельно. Смотрите этот комментарий от Дайан Хэкборн (инженер по Android Framework):

Конечно, если вы на самом деле генерируете разные растровые изображения для разных плотностей, то вы должны делать это, потому что вы хотите / должны тщательно контролировать их графику. Однако моя первоначальная точка зрения остаётся неизменной: если то, что вы делаете, это рисование ваших значков с одним высоким разрешением, а затем их автоматическое масштабирование для создания версий с меньшим разрешением на дюйм, стоит подумать о том, чтобы позволить платформе сделать масштабирование за вас.

Также имейте в виду, что для новой плотности tvdpi, которая используется в таких вещах, как Nexus 7, мы настоятельно не советуем разработчикам создавать для них собственные битовые карты. Позвольте системе позаботиться об их уменьшении (от версии hdpi или более высокой плотности, которую вы предоставляете). Это то, что происходит почти со всеми графическими изображениями, которые вы видите в стандартном программном обеспечении, поставляемом с Nexus 7. Если оно достаточно хорошо для того, что поставляется на N7, возможно, вам этого достаточно.

Источник: https://groups.google.com/forum/?fromgroups#!topic/android-developers/-CMgbDIo0qA%5B1-25%5D

2 голосов
/ 08 декабря 2010

Приложение Google IO предназначено для участников конференции Google IO. Если вы помните, все участники получили HTC EVO на конференции, которая была предварительно загружена этим приложением (вместо традиционного переплета с картами и расписаниями). Так как EVO - это устройство с поддержкой hdpi, я думаю, им не нужно было включать значки, которые не были hdpi.

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

2 голосов
/ 08 декабря 2010

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

Взято из: Поддержка нескольких экранов

Во время выполнения платформа предоставляет три типа поддержки вашего приложение, чтобы обеспечить лучшее возможно отображение на текущем устройстве Экран:

1) Предварительное масштабирование ресурсов (например, активы изображения)

2) Автоматическое масштабирование размеров в пикселях и координаты

3) Отображение режима совместимости включено большие размеры экрана

В частности, поскольку в этом приложении есть только изображения с разрешением hdpi, оно уменьшит их размер, чтобы они хорошо выглядели на экранах с разрешением mdpi и ldpi.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...