在我的设备上运行应用程序时图像调整大小(Android Studio)

时间:2015-06-14 23:06:38

标签: image android-studio autoresize

我刚开始使用Android Studio,我有一台运行Android Froyo(API 8)的旧设备,显示分辨率为240x320px。

  • 我的图像宽度为240像素,当我使用带有wrap_content的ImageView在我的设备上显示该图像时,它不会使用我的设备屏幕的整个宽度。

  • 当我将ImageView宽度设置为240px时,它占据了我设备的整个宽度(所以我知道我的设备实际上有240px宽度),但我可以看到它已经模糊了。

显然,在编译和加载图像之前,图像会调整为较低的分辨率。

如果有人可以帮助我解释为什么会发生这种情况,我会非常感激,因为我无法找到,在这里和Google上搜索。

谢谢!

1 个答案:

答案 0 :(得分:0)

由于我没有得到我的问题的答案,一夜之间思考,我相信我明白了。

  • 我的显示器有2.8“,所以我认为它的密度大约是143dpi(SQRT(240 ^ 2 + 320 ^ 2)/2.8)。
  • 使用该密度,在'dp'中声明的对象会在屏幕上占用太多空间。
  • 因此,在将'dp'值与屏幕上的实际像素数进行比较后,我发现其密度实际为120dpi(LDPI),因此160dp对象实际上在我的屏幕上没有一英寸,但是3/4英寸。

也许这是由设备完成的,而不是编译器(我不知道),但我在'px'中声明的所有内容在加载前都会乘以3/4,因为它的密度。

我希望我是对的,我帮助过任何有同样疑问的人。