0

我一直在使用像素在表面视图上定位事物(位图、文本)。例如,为了使某些东西居中,我将取代表屏幕的矩形宽度和高度的一半。屏幕宽度和高度按预期返回。我的手机 (480*800) 报告可用屏幕为 442*800,密度为 1.5,在 240*320 模拟器上运行,可用屏幕报告为 221*320,密度 0.75。一切如预期。

但是这些值当然是像素,所以为了使某些东西居中,我应该首先乘以密度因子,然后再减半。奇怪的是,在低分辨率模拟器和我的高分辨率手机上,一切都完美地居中。这对我来说没有意义。

在两个屏幕上,为了使文本看起来相同,我使用密度缩放值设置大小,正如我所期望的那样,这很有效。

在清单中,我宣布支持所有屏幕尺寸(尽管在我这样做之前我也看到了相同的“正确”行为)

为什么没有我调整它们的密度像素值“工作”?我现在很困惑。

4

1 回答 1

2

一个像素就是一个像素就是一个像素!

它是屏幕和尺寸的最小公分母。

密度是将多少像素打包成一个度量单位,通常是一英寸。在物理显示器上。

例如,物理宽度为 5 英寸,分辨率为 500x1000,密度为 200dpi(5 英寸中 1000 个像素)。具有相同分辨率的 4 英寸物理宽度产生 250dpi 的密度(4 英寸中 1000 个像素)。

x=500(宽度的一半)是两者的屏幕中心,与密度无关。事实上,以像素为单位的宽度的一半是任何尺寸和任何密度的屏幕的中心。

于 2013-01-03T21:35:06.997 回答