Android 2.0 中的分辨率支持

发布于 2024-08-10 03:41:19 字数 210 浏览 8 评论 0原文

收到我的第一个 Motorola Droid 用户发来的电子邮件。 Android 2.0 中引入的新 480x854 分辨率(而不是 320x480)对我的用户界面造成了严重破坏。一切都变得更小并且位置不佳。

我的印象是,如果我们遵循 XML 布局指南,我们的分辨率是安全的,因为不使用绝对坐标。有人有使 UI 分辨率安全的经验吗?我们需要每个分辨率乘以每个方向的 main.xml 吗?

Received an email from my first Motorola Droid user. The new 480x854 resolution introduced in Android 2.0 (as opposed to 320x480) is wreaking havoc with my user interfaces. Everything is smaller and ill-positioned.

I was under the impression that if we follow the XML layout guides we were resolution-safe, as no absolute coordinates are used. Does anyone have experience in making the UI resolution-safe? Will we need a main.xml for each resolution times each orientation?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

十雾 2024-08-17 03:41:19

您使用了哪些尺寸单位?

据我所知,使用 dpsp 应该可以保证您的安全。

来自文档

dp
与密度无关的像素 - 一种基于密度的抽象单位
屏幕的物理密度。这些
单位相对于 160 dpi
屏幕上,所以 1 dp 是屏幕上的一个像素
160 dpi 屏幕。的比例为
dp-to-pixel 将随着
屏幕密度,但不一定
正比例。注:编译器
但接受“dip”和“dp”
“dp”与“sp”更一致。

sp
与比例无关的像素 - 这类似于 dp 单位,但它也是
按用户的字体大小缩放
偏爱。建议您使用
指定字体大小时使用此单位,
因此它们将针对这两个方面进行调整
屏幕密度和用户偏好。

Which dimension units did you use?

AFAIK using dp and sp should keep you safe.

From documentation:

dp
Density-independent Pixels - an abstract unit that is based on the
physical density of the screen. These
units are relative to a 160 dpi
screen, so one dp is one pixel on a
160 dpi screen. The ratio of
dp-to-pixel will change with the
screen density, but not necessarily in
direct proportion. Note: The compiler
accepts both "dip" and "dp", though
"dp" is more consistent with "sp".

sp
Scale-independent Pixels - this is like the dp unit, but it is also
scaled by the user's font size
preference. It is recommend you use
this unit when specifying font sizes,
so they will be adjusted for both the
screen density and user's preference.

眼眸 2024-08-17 03:41:19

eclair 模拟器可以解决这些问题,请务必阅读:

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

您的应用程序会根据许多因素(甚至是 min-sdk)响应不同的分辨率。
此外,该页面还提供了一些最佳实践:

  1. 在 XML 布局文件中更喜欢使用 wrap_content、fill_parent 和 dial 单位,而不是 px
  2. 避免绝对布局
  3. 请勿在代码中使用硬编码像素值
  4. 使用特定于密度和/或分辨率的资源

The eclair emulator works wonders for these issues, also make sure to read:

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

Your application responds to different resolutions based on many factors, even the min-sdk.
Also, from the page, are some best practices:

  1. Prefer wrap_content, fill_parent and the dip unit to px in XML layout files
  2. Avoid AbsoluteLayout
  3. Do not use hard coded pixel values in your code
  4. Use density and/or resolution specific resources
愚人国度 2024-08-17 03:41:19

除了分辨率差异之外,另一件需要考虑的事情是 Droid 的 WVGA 屏幕与 G1 等之前的设备具有不同的纵横比。在我下载的许多旧应用程序中,这表现为屏幕底部的间隙,或纵向模式下垂直未对齐的元素。您可能想要尝试在具有 WVGA 外观的模拟器中运行您的应用程序,以检查您的布局对宽高比所做的任何隐藏假设。

Aside from the resolution difference, the other thing to consider is that the Droid's WVGA screen has a different aspect ratio from previous devices like the G1. In many older apps that I've downloaded, this manifests as a gap at the bottom of the screen, or elements that are vertically misaligned in portrait mode. You may want to try running your app in the emulator with a WVGA skin to check for any hidden assumptions that your layout makes about the aspect ratio.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文