Почему Nexus 7 может отображать на экране гораздо больше контента, чем Galaxy Nexus?

30

Galaxy Nexus имеет размер 1280x720, а планшет Nexus 7 имеет размер 1280x800.

Я понимаю, что планшет физически больше, но разрешение экрана, а не размер дисплея, определяет размер экрана.

Почему Nexus 7, кажется, способен отображать гораздо больше контента на экране?

РЕДАКТИРОВАТЬ - Мой вопрос не «почему он был разработан таким образом». Мой вопрос больше "как получается, что он может показать больше на экране"? PPI не объясняет это.

Это просто вопрос масштабирования?

zacharyalexstern
источник
Я должен был спросить «как» это может сделать это. Когда я сказал «почему», я не имел в виду «почему они так спроектировали», я имел в виду «почему это ТЕХНИЧЕСКИ возможно»?
zacharyalexstern
Почему это возможно? Шутки в сторону? Вы делаете вещи меньше.
RR
Кроме того, если вы посмотрите в build.prop этого ПЗУ (если у вас есть дамп ПЗУ), там есть строка ro.sf.lcd_density = xxx, которая определяет плотность экрана. Чем выше значение, тем больше может поместиться на экране, а также наоборот, тем меньше может поместиться на экране.
t0mm13b
2
@zacharyalexstern: вопрос о том, как это делается, является вопросом разработки, и здесь не по теме. Попробуйте StackOverflow.
Ли Райан

Ответы:

44

Чтобы понять, почему Nexus 7 может показывать больше контента, чем Galaxy Nexus, я сначала объясню две концепции: плотность экрана и плотность-независимый пиксель.

Но прежде чем мы углубимся в технические детали, возможно, стоит уточнить цели проектирования с использованием пикселей, независимых от плотности. Цель состоит в том, чтобы определить пользовательский интерфейс, который одинаков по размеру на разных устройствах, независимо от размера экрана. Таким образом, в этом случае внешний вид меню в Galaxy Nexus и планшете одинаковый (бок о бок должен выглядеть очень похожим), но, поскольку у него экран большего размера, может отображаться больше контента. Дизайнер выбирает внешний вид, который выглядит хорошо для определенного размера (экран с разрешением 160 точек на дюйм), и это «моделируется» в этом случае на устройствах с более высоким разрешением.

Плотность экрана

Обычно упоминается как точек на дюйм (точек на дюйм). Android группирует все фактические плотности экрана в четыре обобщенные плотности: низкая (120), средняя (160), высокая (240) и сверхвысокая (320). У такого устройства, как Galaxy Nexus, «сверхвысокая» плотность экрана (точнее, значение dpi установлено на 320). Nexus 7 использует «tvdpi» - то есть 213 точек на дюйм.

Плотность Независимый Пиксель

Обычно упоминается как дп. Это виртуальная пиксельная единица, используемая при отображении контента. Плотно-независимый пиксель эквивалентен одному физическому пикселю на экране с разрешением 160 точек на дюйм. Для расчета дп используйте следующую формулу:

px = dp * (dpi / 160)

или эквивалентно:

dp = (px / dpi) * 160

Причина, по которой Nexus 7 может показывать больше контента, чем Galaxy Nexus, несмотря на то, что имеет аналогичные разрешения, заключается в следующем: dpi Nexus 7 ниже, чем Galaxy Nexus .

Galaxy Nexus (320 точек на дюйм, 720 пикселей в ширину)

(720 / 320) * 160 = 360 dp

Nexus 7 (213 точек на дюйм, 800 пикселей в ширину)

(800 / 213) * 160 = 600 dp

Это означает, что когда приложения визуализируются на Galaxy Nexus, ширина экрана на самом деле составляет 360 dp (отображается с использованием 720 пикселей). В то время как на Nexus 7 ширина экрана составляет 600 точек на дюйм (отображается с использованием 800 пикселей).

бонус

Если ваш Galaxy Nexus имеет root-права, вы можете использовать приложение, такое как LCD Density Modder, и изменить DPI своего устройства на 240. То, что вы получите, будет намного ближе к Nexus 7 в меньшем корпусе. Слева - скриншот устройства с разрешением 240 точек на дюйм. Вы заметите, что мы можем видеть намного больше контента, когда DPI меньше.

Galaxy Nexus с разрешением 240 т / д Galaxy Nexus с разрешением 320 точек на дюйм

Ничего общего с ИЦП

Другие ответы упоминают PPI. Количество отображаемого контента не имеет ничего общего с PPI устройства. Хотя обычно производители выбирают DPI, наиболее близкий к PPI устройства. (Например, у Galaxy Nexus PPI составляет 316, но DPI - 320, тогда как у Nexus 7 - PPI 216, но используется 213 DPI).

Дальнейшее чтение

http://developer.android.com/guide/practices/screens_support.html

Дерек Квок
источник
2
Спасибо за это, никто больше не ответил на вопрос, который я задавал.
zacharyalexstern
2
В целом, это хороший ответ, но в параграфе «ничего общего с PPI» не делается ложное различие между DPI и PPI. Смотрите мой комментарий на ответ Мухаммеда Эссама.
Вайзард
Здравствуйте. Я просто не понимаю ни слова о том, что вы говорите. Вы предполагаете, что чем больше dpi, тем больше вы можете показать. Но когда у вас 100 точек на дюйм, вы просто показываете меньше информации на дюйм, чем при 200 точках на дюйм. А также, если плотность по умолчанию установлена ​​рядом с ppi устройства, вы не можете сделать лучше, даже изменив значение, потому что, насколько я знаю, да, одна точка может отображаться на многих пикселях, но пиксель не может отображать больше эта одна точка.
Оливер
Э-э-э, это относится к экранам рабочего стола?
Оливер
2
На самом деле Nexus 7 имеет 213 точек на дюйм и 600x961 точек на дюйм. См plus.google.com/105051985738280261832/posts/6eWwQvFGLV8
beetstra
7

Это потому, что пиксели на дюйм (PPI) отличаются между ними. Чем выше PPI, тем выше качество, но за счет (относительного) меньшего размера экрана. Таким образом, Nexus 7 имеет 216 пикселей на дюйм, в то время как Galaxy Nexus - 316 пикселей на дюйм. Разрешение не все, вы также должны учитывать плотность пикселей.

Высокие значения PPI имеют то преимущество, что это HD, но оно также имеет недостаток, заключающийся в меньшем размере экрана (при постоянном разрешении).

Вы можете прочитать больше о PPI здесь .

Мохамед Эссам
источник
Я не вижу, что PPI имеет отношение к экрану недвижимости. При условии отсутствия масштабирования, Galaxy Nexus должен иметь примерно то же пространство экрана, что и Nexus 7, на экране все должно выглядеть меньше.
zacharyalexstern
3
@zacharyalexstern, PPI важен, потому что он определяет масштабирование шрифта. Предполагается, что 12-точечный текст имеет высоту 1/6 дюйма (72pt = 1 дюйм), что соответствует 36 пикселям на 216ppi Nexus 7 и примерно 53 пикселям на 316ppi Galaxy Nexus. Другие элементы интерфейса также масштабируются на основе PPI.
Вайзард
2
По сути, элементы пользовательского интерфейса масштабируются для отображения одинакового физического размера на разных устройствах. Вот почему вы можете разместить больше из них на устройстве, которое физически больше.
Вайзард
2
@zacharyalexstern Я не могу сказать это лучше, чем Вайзард, поэтому я не буду. Я просто поддерживаю его, потому что вы, кажется, непреклонны, что PPI не имеет никакого отношения к экранной недвижимости. Я обещаю вам , наоборот, она имеет все , чтобы сделать с экрана недвижимости. Вы правы, что два экрана 1280x800 имеют одинаковое количество пикселей . Но все компоненты Android масштабируются до плотности пикселей. Вы запрограммировали для Android? Знаком ли термин дп ?
1
@DerekKwok, DPI - это термин для печати, который на самом деле не применим к компьютерным дисплеям. Когда он используется в отношении компьютерных дисплеев, он обычно является синонимом PPI, потому что изображение состоит из пикселей, а не точек.
Вайзард
4

Отображение того же объема содержимого на 4,6-дюймовом экране в большинстве случаев сделает его слишком маленьким. Вы не сможете его прочитать, поэтому размещение такого большого количества содержимого на экране не имеет смысла. Разрешение определяет количество пикселей. Вы можете отобразить, но один пиксель не одинакового размера на каждом экране . Для того, чтобы сделать контент пригодным для чтения и чтения, необходимо использовать больше пикселей на меньшем экране, потому что они более плотно упакованы.

Для хорошего сравнения откройте веб-страницу на Galaxy Nexus и полностью уменьшите масштаб. Та же страница, просматриваемая на 14-дюймовом (или таком) мониторе с аналогичным разрешением, не будет проблемой, но текст на вашем телефоне практически не поддается расшифровке


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

Однако также возможно, что разработчик может определить совершенно разные макеты в зависимости от размера или плотности экрана. Поэтому макеты на 7-дюймовом устройстве могут быть совершенно не связаны с макетами на 4-дюймовом или 10-дюймовом устройстве. Это дает разработчикам большую гибкость в создании более богатых пользовательских интерфейсов для планшетов (и других подобных устройств) при сохранении пользовательских интерфейсов телефона. Это подробно описано на сайте разработчиков Android .

eldarerathis
источник
Собирался сказать, иронично, что Google поддерживает iPad для своего Google + ... что демонстрация Glass с Брином была чем-то еще ...: D
t0mm13b
Я понимаю, ПОЧЕМУ это сделано, мой вопрос больше как . Например, это просто вопрос масштабирования?
zacharyalexstern
@zacharyalexstern: Это зависит от того, как приложение написано. Вы можете написать приложение, чтобы использовать совершенно разные макеты на экранах разных размеров, если хотите, так что это не обязательно просто «масштабирование» в обычном смысле. Или вы можете позволить приложению просто масштабироваться, если хотите. На сайте разработчиков Android есть довольно большой набор документации, посвященной этому, но это довольно простое резюме.
eldarerathis
1

Извините за глупый ответ, но: Galaxy Nexus делает все больше.

Например, маленькая буква «а» может иметь ширину 30 пикселей на Galaxy Nexus, тогда как на Nexus 7 она имеет только 20 пикселей. Таким образом, на экране может поместиться больше букв. Причина, по которой они выглядят одинакового размера (например, 3 мм, если вы поместите линейку на экран), заключается в том, что, как говорили другие, плотность пикселей. По сути, пиксели больше, физически, на Nexus 7.

Причина, по которой Galaxy Nexus делает все больше, заключается в том, что вы можете использовать его, не отрывая его от своего лица. Если бы буква «а» имела ширину 20 пикселей, как на Nexus 7, она была бы слишком маленькой для удобного чтения (поскольку пиксели намного меньше).

Феликс
источник
Я понимаю, что это не мой вопрос.
zacharyalexstern