我正在Galaxy Tab和摩托罗拉XOOM模拟器皮肤上测试我的应用程序,但我不明白为什么可绘制对象是从错误的文件夹中获取的。我有可绘制的xhdpi文件夹,在那里我存储大尺寸的图片。但是,Tab 从 drawable-hdpi 中获取可绘制对象,而 XOOM 使用 drawable-mdpi 文件夹。那么,如何管理我的资源呢?提前谢谢。
此外,感觉 sp 中定义的视图大小没有正确移植。我有一些视图需要 80sp x 80sp,在具有 mdpi 和 hdpi 屏幕的手机上,它们看起来是正确的,但在平板电脑上它们看起来太小了。为什么会这样?
但是,Tab 从 drawable-hdpi 中获取可绘制对象,而 XOOM 使用 drawable-mdpi 文件夹。那么,如何管理我的资源呢?
没有单一的"Galaxy Tab"设备,所以我不知道你指的是哪一个。XOOM是一种-mdpi
设备。我希望Galaxy Tab 10.1也会-mdpi
。但是,最终,设备制造商将选择他们认为可为现有应用程序提供最佳结果的值。
GalaxyTab 7"使用"-large-hdpi";XOOM 10.1" 使用"-xlarge-mdpi"。
查看此帖子以了解详细信息:GalaxyTab,摩托罗拉Xoom屏幕设计和尺寸
我测试了多种屏幕分辨率,发现 Android 对不同的屏幕分辨率使用以下限定符:240x320: LDPI320x480: -MDPI480x800: -hdpi银河标签7.1英寸:-大银河标签10.1英寸:-x大
希望这些信息对您有用。
Galaxy 选项卡(旧的,运行Android 2.x)确实不是xhdpi。我通过使用"大"限定符来识别平板电脑而取得了成功。否则,您始终可以将 API 限定符(如 v11)用于仅限 Honeycomb 的资源。
您可以使用屏幕尺寸限定符代替使用 dpi 限定符,此处提供了有关在选择要使用的资源时可以使用哪些标签的确切信息,
http://developer.android.com/guide/topics/resources/providing-resources.html
重要的是要了解dpi和屏幕尺寸之间的区别,dpi在手机上往往很高,比如三星Galaxy S2,但在10英寸的大平板电脑上,它往往很低(如果你考虑一下,这是有道理的,手机将更多的像素压缩到更小的空间)。