为什么Nexus 7在屏幕上显示的内容比Galaxy Nexus多得多?


30

Galaxy Nexus为1280x720,而Nexus 7平板电脑为1280x800。

我意识到平板电脑实际上更大,但是决定屏幕实际面积的是屏幕分辨率而不是显示器尺寸。

为什么Nexus 7似乎可以在屏幕上显示更多内容?

编辑-我的问题不是“为什么要这样设计”。我的问题更多是“它如何能够在屏幕上显示更多”?PPI没有解释这一点。

这仅仅是扩展的问题吗?


我应该问“如何”能够做到。当我说为什么时,我不是说“他们为什么要这样设计”,而是说“为什么这在技术上是可能的”?
zacharyalexstern 2012年

为什么可能呢?认真吗 您使事情变得更小。
RR

另外,如果您查看该ROM的build.prop(如果有ROM转储),则其中的一行ro.sf.lcd_density = xxx指示屏幕密度。值越高,越适合屏幕显示,反之亦然,越不适合屏幕显示。
t0mm13b 2012年

2
@zacharyalexstern:问它是如何完成的是开发问题,在这里不合主题。尝试使用StackOverflow。
Lie Ryan 2012年

Answers:


44

要了解Nexus 7为什么可以显示比Galaxy Nexus更多的内容,我将首先解释两个概念:屏幕密度和密度独立像素。

但是在我们讨论技术细节之前,可能有必要澄清使用与密度无关的像素的设计目标。目标是定义一个在各个设备上尺寸都相似的UI,而与屏幕大小无关。因此,在这种情况下,Galaxy Nexus和平板电脑的菜单外观是相同的(并排看起来非常相似),但是,由于屏幕更大,因此可以显示更多内容。设计人员选择适合特定尺寸的外观(以160 dpi屏幕为基础),并且在具有较高dpi的设备中对此进行“模拟”。

屏幕密度

通常称为dpi(每英寸点数)。Android将所有实际屏幕密度分为四个广义密度:低(120),中(160),高(240)和超高(320)。诸如Galaxy Nexus之类的设备具有“超高”屏幕密度(更具体地说,dpi值设置为320)。Nexus 7使用“ tvdpi”-即213 dpi。

密度独立像素

通常称为dp。这是显示内容时使用的虚拟像素单位。与密度无关的像素等效于160 dpi屏幕上的一个物理像素。要计算dp,请使用以下公式:

px = dp * (dpi / 160)

或等效地:

dp = (px / dpi) * 160

尽管分辨率相似,但Nexus 7仍能显示比Galaxy Nexus更多的内容的原因是:Nexus 7的dpi低于Galaxy Nexus

Galaxy Nexus(320 dpi,720像素宽)

(720 / 320) * 160 = 360 dp

Nexus 7(213 dpi,800像素宽)

(800 / 213) * 160 = 600 dp

这意味着当应用程序在Galaxy Nexus上渲染时,屏幕的宽度实际上是360 dp(使用720像素渲染)。而在Nexus 7上,屏幕的宽度为600 dp(使用800像素渲染)。

奖金

如果您的Galaxy Nexus是扎根的,则可以使用LCD密度修改器之类的应用,并将设备的DPI更改为240。使用较小的包装,您将获得与Nexus 7更近的东西。左侧是设备分辨率为240 dpi的屏幕截图。您会注意到,当DPI较低时,我们可以看到更多的内容。

Galaxy Nexus的240 dpi Galaxy Nexus的320 dpi

与PPI无关

其他答案提到PPI。显示的内容量与设备的PPI无关。尽管通常,供应商会选择最接近设备PPI的DPI。(例如,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之间做出了错误的区分。请参阅我对穆罕默德·埃萨姆(Mohammed Essam)的回答的评论。
Wyzard

你好。我只是不明白你在说什么。您假定dpi越低,显示的内容就越多。但是,如果每英寸有100点,那么每英寸显示的信息就会少于每英寸200点。而且,如果将默认浓度设置为接近设备ppi,则即使修改值也无法做得更好,因为据我所知,可以在许多像素上显示一个点,但是一个像素不能显示更多那一个点。
奥利弗(Oliver)

嗯,这适用于桌面屏幕吗?
奥利弗(Oliver)2012年

2
实际上,Nexus 7具有213 DPI,尺寸为600x961 dp。请参见plus.google.com/105051985738280261832/posts/6eWwQvFGLV8
beetstra 2013年

7

这是因为它们之间的每英寸像素(PPI)不同。PPI越高,质量越高,但屏幕尺寸(相对)较小。因此,Nexus 7每英寸216像素,而Galaxy Nexus每英寸316像素。分辨率不是全部,还必须考虑像素的密度。

高PPI值具有高清的优点,但缺点是屏幕尺寸较小(在恒定分辨率下)。

您可以在此处阅读有关PPI的更多信息。


我看不到PPI与屏幕房地产有什么关系。假设没有缩放比例,Galaxy Nexus的屏幕空间应与Nexus 7大致相同,但屏幕上的显示空间应该较小。
zacharyalexstern 2012年

3
@ zacharyalexstern,PPI很重要,因为它确定字体缩放。12点文字应该是六分之一英寸高(72pt = 1in),相当于216ppi Nexus 7上的36像素,以及316ppi Galaxy Nexus上的约53像素。其他UI元素也基于PPI缩放。
Wyzard

2
基本上,UI元素被缩放以在设备之间以一致的物理尺寸显示。这就是为什么您可以在物理尺寸更大的设备上容纳更多这些设备的原因。
Wyzard

2
@zacharyalexstern我不能比Wyzard更好,所以我不会。我只是支持他,因为您似乎坚定地认为PPI与屏幕空间无关。我答应你,相反,它有一切做与屏幕房地产。您是正确的,两个1280x800屏幕的像素数相同。但是,所有Android组件均按像素密度缩放。您是否为Android编程?dp这个词熟悉吗?

1
@ DerekKwok,DPI是一个印刷术语,实际上并不适用于计算机显示器。 当用于计算机显示器时,它通常是PPI的同义词,因为图像是由像素而不是点组成的。
Wyzard-停止Harming Monica

4

在4.6英寸的屏幕上显示相同数量的内容将使其在大多数情况下变得很小。您将无法读取它,因此在屏幕上放置这么多内容根本没有意义。分辨率决定了多少像素您可以显示,但是每个屏幕上的像素大小都不相同。要使内容可用和可读,您需要在较小的屏幕上用尽更多像素,因为它们的密度更高。

为了更好地进行比较,请在Galaxy Nexus上打开一个网页,然后将其一直缩小。在14英寸(或类似尺寸)的显示器上以相同的分辨率查看相同的页面不会有问题,但是手机上的文字几乎难以辨认。


从“这是如何在技术上完成”的角度来看-它很大程度上取决于应用程序的编写方式。默认情况下,Android会简单地将界面缩放到更大的屏幕上,这可能会或可能不会导致显示更多数据(例如,考虑滚动列表:在更大的屏幕上会显示更多项目)。那是最基本的情况。

但是,开发人员也可以根据屏幕尺寸或密度来定义完全不同的布局。因此,7“设备上的布局可能与4”设备或10“设备上的布局完全无关。这为开发人员提供了很大的灵活性,可为平板电脑(和其他此类设备)创建更丰富的UI,同时保留电话UI在Android的开发人员网站上有详细介绍


要说的是,具有讽刺意味的是,谷歌正在为他们的Google+支持iPad ...不过,与布林(Brin)进行的Glass演示还是其他的东西...:D
t0mm13b 2012年

我知道为什么会这样做,我的问题更多是如何。例如,这仅仅是扩展问题吗?
zacharyalexstern 2012年

@zacharyalexstern:那取决于应用程序的编写方式。您可以根据需要编写一个应用程序,以在大小不同的屏幕上使用完全不同的布局,因此,它不一定只是通常意义上的“缩放”。或者,您可以根据需要扩展应用程序。在Android开发人员网站上有相当大量的专用于此的文档,但这是一个非常基本的摘要。
eldarerathis 2012年

1

很抱歉提供愚蠢的答案,但是:Galaxy Nexus使一切变得更大。

例如,小写字母“ a”在Galaxy Nexus上的宽度为30像素,而在Nexus 7上只有20像素。这样,屏幕上可以容纳更多的字母。正如其他人所说,它们看起来大小相同(例如,如果在屏幕上放上标尺,则为3mm)的原因是像素密度。基本上,Nexus 7的像素更大。

Galaxy Nexus之所以能使一切变得更大,是因为您可以实际使用它,而无需距离脸一英寸。如果字母“ a”的宽度为20像素(例如在Nexus 7上),那么它将太小而无法舒适地阅读(因为像素要小得多)。


我了解那不是我的问题。
zacharyalexstern
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.