1

我问过一个与此类似的问题,但我想我会问一个更一般的问题以获得更广泛的意见。

我问这个问题是因为我最近开发的两个app,我把所有图片资源都扔到drawable-hdpi文件夹下,没有处理landscape-mode,主要在我自己的个人Droid手机上测试,基本感觉像我只是为我自己的设备开发。尽管我确实总是在适当的地方使用 dpi 和 sp,但这还不足以让我的应用程序在其他屏幕尺寸/密度上适当地缩放。它有时可以缩放,但总是倾向于在较小的尺寸上切断屏幕的一部分。

启动一个至少在所有设备上都可以很好扩展的应用程序的最佳方法是什么?

例如,我是否应该构建我的应用布局,使其在默认 HVGA 屏幕上看起来正确并允许它扩展到更大的密度?积极构建纵向和横向布局文件是否是最佳实践?

您正在做什么来确保您的应用程序在所有设备上看起来都不错,而不是只关注一种尺寸,然后再争先恐后地管理它?

4

1 回答 1

2

我总是遵循这些规则:

  • 将所有内容从support-screens设置为 true。Android 会知道您已为每种屏幕环境做好准备,并且您会知道它不会进行任何屏幕虚拟化。例如:即使您的设备有大尺寸屏幕,您的代码也会将其视为普通尺寸屏幕
  • 不要对宽度和高度使用固定尺寸。如果必须,请使用“dp”作为虚拟像素。使用 WRAP_CONTENT 和 FILL_PARENT。“dp”是屏幕上 160 dpi 的物理像素。如果您的应用在密度较低/较高的设备上运行,android 会为您重新计算。
  • 使用“dp”作为字体大小的单位。
  • 尝试相对地做所有事情。如果你想拥有“另一个东西”等,你可以使用RelativeLayout。如果你需要百分比,你可以使用LinearLayout。
  • 以九道为背景。
  • 确保将资源放入正确的可绘制/布局文件夹中。

当然,这不是每个项目的最佳方法 :) 有时 UI 设计师想要一些额外的 :]

于 2010-12-09T01:18:39.790 回答