我正在我的Galaxy S设备上开发和测试一个Android应用程序,它应该是(根据android开发网站)一个普通大小的屏幕(4英寸)和HDPI(233dpi)。
出于某种原因,我在drawable-mdpi中显示的drawables显示而不是drawable-hdpi中的drawable。由于某种原因,设备似乎“认为”它是一个mdpi设备......
有什么想法吗?
答案 0 :(得分:7)
好的,直到我在这里找到解决方案的时间不长,所以在这里,其他人可能会遇到同样的问题。
在我的Android清单中,我没有提到使用该元素的min sdk版本。默认值为 1 ,这意味着应用程序说它支持所有版本,包括旧的1.x版本。
在屏幕支持文章(http://developer.android.com/guide/practices/screens_support.html)中,我注意到一个相当小的句子:“为Android 1.5或更早版本编写的所有应用程序(根据定义)都是针对T-上使用的基线HVGA屏幕而设计的移动G1和类似设备,尺寸正常,密度为mdpi。“
似乎因为我没有提到min sdk版本的值,我的设备将该应用视为与旧版本兼容并忽略了整个屏幕范围的支持!然后它默认为中等屏幕和mdpi资源。
去图..
答案 1 :(得分:2)
以下是一些想法。你能记录屏幕密度的输出
吗?http://developer.android.com/guide/practices/screens_support.html
http://developer.android.com/reference/android/util/DisplayMetrics.html
记录displayMetrics的内容,以帮助您了解所使用的显示是否有问题。为了兼容性,android可以使用较低的dpi运行。