将Android应用程序适配到不同的屏幕尺寸

4

我正在努力将我的应用程序适配到不同的屏幕尺寸上。目前它已经针对10.1英寸的屏幕进行了优化,但我正在努力使其在Kindle Fire上运行,该设备有7英寸的屏幕。我只使用相对布局。目前为止,我的背景可以完美地缩放,但是覆盖在背景上的图像按钮无法缩放,我想知道是否有原因。另外,我使用边距来调整按钮的位置,这样做可以适应不同的屏幕尺寸吗?


你的按钮图像放在了xhdpi、hdpi、mdpi、ldpi目录中吗?如果我没有记错,Galaxy 10.1是xhdpi,而Fire是mdpi。 - rf43
它们全部都是mdpi格式的,这在我的10.1变压器上运作良好。 - Peter
我认为你的可绘制资源应该在Transformer的hdpi目录下。如果我没记错,那个平板电脑的实际密度大约是192或194,所以它会被提升到hdpi(240)。 - rf43
2个回答

5

要支持在不同屏幕上的应用程序,请参考以下链接:

http://developer.android.com/guide/practices/screens_support.html

对于缩放图像按钮,使用九宫格图片(nine patch images)可以很好地缩放。

我使用边距来调整我的按钮位置,这样做对于缩放大小来说可以吗?

可以的。


3
您应该在清单文件中始终定义supports-screens属性,因为默认值可能会随着版本的更改而发生变化。
但如果您想要支持xlarge屏幕,则会遇到困境,因为此属性是在API级别9(Android 2.3)中引入的。您必须创建两个不同的APK,一个用于Android版本>= 2.3,另一个用于旧版。
由于这是一个常见问题,Android提供了一种不错的方法,即使使用多个APK也可以在市场上仅发布一个应用程序。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接