轻松扩展Android应用程序以适应更小的屏幕尺寸

时间:2012-02-18 21:54:22

标签: android

现在我有一个我为Android 10.1英寸屏幕(平板电脑)构建的应用程序,我希望能够进行缩放,以便它可以在点火(7英寸屏幕)上工作。最简单的方法是什么?

编辑: 所以我采取了建议,这个步骤中的大多数人已经给出并用相对布局替换了所有绝对布局,我使用左,右,上,下边距放置它们,但仍然是按钮图像太大而且它们放错了地方,我怎么能这样做才能正常工作?

4 个答案:

答案 0 :(得分:4)

有一些设计标准用于开发Android应用程序,使它们可以在不同的配置中工作,如屏幕尺寸:

  1. 为不同的配置使用不同的布局
  2. 在布局中使用fill_parent并包装内容属性
  3. 不提供硬编码像素值
  4. 不要使用绝对布局
  5. 为不同的配置提供不同的drawable
  6. 了解更多信息:http://developer.android.com/guide/practices/screens_support.html

答案 1 :(得分:1)

遵循最佳做法指南始终是好的,但有时您需要一个全新的布局来适应不同的屏幕尺寸。 Android允许您为不同的屏幕尺寸创建不同的布局文件。为此,您可以在'res'下创建一个名为'layout-large'或'layout-large-land'的新文件夹。 “layout-xlarge”和“layout-xlarge-land”也是如此。您可以在这些目录中添加另一个具有相同名称和相同ID的xml布局文件,android将根据用户屏幕自动选择正确的文件。

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

答案 2 :(得分:1)

老实说,这取决于你的申请。如果你构建它以便它可以用于平板电脑而你没有指定宽度和高度的非百分比,它可能会在Kindle Fire上自动缩放到合适的大小。

老实说,获取测试设备(或使用Android模拟器模拟大小),看看会发生什么。很可能,如果你遵循正确的设计模式,应用程序将在Kindle Fire上使用Just Work(TM)。

如果没有,您可能需要了解如何指定元素的大小。使用像素或任何其他类型的基于像素的数字测量将为您的UI做一些奇怪的事情。使用由密度无关像素定义的填充和边距,而不是宽度和高度。这有助于您的应用正确扩展。

我最近写了一个只在手机上测试它的应用程序,当我购买平板电脑时,我感到非常惊喜,并且该应用程序完美扩展 - 没有任何关于扩展它的方法的Android警告。

答案 3 :(得分:0)

真的很容易,但不推荐,因为它可以像素化图像,是启用屏幕兼容模式。

尝试添加此内容:

<supports-screens android:compatibleWidthLimitDp="320" />

或者这个:

<supports-screens android:largestWidthLimitDp="320" />

到你的AndroidManifest.xml。

要了解最新情况,请点击此处: http://developer.android.com/guide/practices/screen-compat-mode.html#Enable