我在 Eclipse 中使用Android UI,发现它有点忙。使用布局管理器设计布局有点费时。所以我想知道是否可以根据(x,y)
系统指定 UI 元素的位置,即在 Visual Studio IDE 中广泛用于 VB、C# 等的 top 和 left 属性?
基于 top 和 left 属性的定位元素将提供很大的灵活性。
我在 Eclipse 中使用Android UI,发现它有点忙。使用布局管理器设计布局有点费时。所以我想知道是否可以根据(x,y)
系统指定 UI 元素的位置,即在 Visual Studio IDE 中广泛用于 VB、C# 等的 top 和 left 属性?
基于 top 和 left 属性的定位元素将提供很大的灵活性。
那怎么会灵活呢?是的,正确地进行布局需要时间,但如果你做得对,它将正确地缩放到任何屏幕尺寸。如果您使用 X/Y 坐标,您将硬编码到特定的屏幕尺寸,这在 Android 上尤其糟糕(因为有多种屏幕尺寸可用)。
如果需要 x, y 定位,可以使用 a FrameLayout
with foregroundGravity
set to top|left
,并layout_marginLeft
用于 x 值,layout_marginTop
用于 y 值。
Android 试图确保您的布局组件排列得很好,以便它们:
它为您提供了很好的 XML 属性来帮助您安排布局。我建议您在此应用程序中使用 RelativeLayout,因为它允许您将布局组件放置在彼此相对的位置。
您可以在此处指定一些 XML 属性:Android 参考、RelativeLayout.LayoutParams
据我所知,没有基于 (x, y) 坐标的内置布局。您也许可以找到可以为您执行此操作的 3rd 方库。但是,我怀疑它们能否提供令人满意的结果。请记住,Android 部署在各种各样的设备上,其中包括一系列不同的屏幕尺寸和分辨率。这意味着您可以使用特定坐标使 UI 在一台设备上看起来很漂亮,但在其他设备上看起来不会很好。
就个人而言,我直接在 XML 文件中编辑我的 UI 布局。我发现这比使用 Eclipse UI 编辑器为我提供了更好的控制。您仍然需要了解布局管理器本身是如何工作的。
您可以AbsoluteLayout
在代码中使用和禁止弃用警告,但想想它在不同屏幕尺寸上的显示效果如何?
我建议RelativeLayout
在您的情况下使用。