0

我在 Eclipse 中使用Android UI,发现它有点忙。使用布局管理器设计布局有点费时。所以我想知道是否可以根据(x,y)系统指定 UI 元素的位置,即在 Visual Studio IDE 中广泛用于 VB、C# 等的 top 和 left 属性?

基于 top 和 left 属性的定位元素将提供很大的灵活性。

4

4 回答 4

3

那怎么会灵活呢?是的,正确地进行布局需要时间,但如果你做得对,它将正确地缩放到任何屏幕尺寸。如果您使用 X/Y 坐标,您将硬编码到特定的屏幕尺寸,这在 Android 上尤其糟糕(因为有多种屏幕尺寸可用)。

如果需要 x, y 定位,可以使用 a FrameLayoutwith foregroundGravityset to top|left,并layout_marginLeft用于 x 值,layout_marginTop用于 y 值。

于 2013-06-25T18:28:41.097 回答
1

Android 试图确保您的布局组件排列得很好,以便它们:

  • 不要相互重叠
  • 不要离开屏幕空间
  • 在不同的屏幕尺寸上看起来相似
  • ETC

它为您提供了很好的 XML 属性来帮助您安排布局。我建议您在此应用程序中使用 RelativeLayout,因为它允许您将布局组件放置在彼此相对的位置。

您可以在此处指定一些 XML 属性:Android 参考、RelativeLayout.LayoutParams

于 2013-06-25T18:37:12.047 回答
1

据我所知,没有基于 (x, y) 坐标的内置布局。您也许可以找到可以为您执行此操作的 3rd 方库。但是,我怀疑它们能否提供令人满意的结果。请记住,Android 部署在各种各样的设备上,其中包括一系列不同的屏幕尺寸和分辨率。这意味着您可以使用特定坐标使 UI 在一台设备上看起来很漂亮,但在其他设备上看起来不会很好。

就个人而言,我直接在 XML 文件中编辑我的 UI 布局。我发现这比使用 Eclipse UI 编辑器为我提供了更好的控制。您仍然需要了解布局管理器本身是如何工作的。

于 2013-06-25T18:30:31.363 回答
1

您可以AbsoluteLayout在代码中使用和禁止弃用警告,但想想它在不同屏幕尺寸上的显示效果如何?

我建议RelativeLayout在您的情况下使用。

于 2013-06-25T18:28:43.860 回答