【问题标题】:How can I position my EditText in a particular pixel on my Android screen?如何将我的 EditText 定位在我的 Android 屏幕上的特定像素中?
【发布时间】:2015-08-10 06:03:43
【问题描述】:

我想将我的 EditText 放在我的 Android 应用程序屏幕中的特定位置,但我看不到任何方法可以将其放置在正确的像素中或使用 x 和 y 坐标将其放置在它所在的位置必须出现。

我的 EditText 是这样的:

<EditText android:id="@+id/txtExample"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="20sp"
        android:width="250dp"
        android:layout_marginTop="30dp"
        android:layout_below="@+id/lblExample"
        android:layout_centerHorizontal="true" />

正如您所见,在此 EditText 下方有一个标签,但我将这个 EditText 与上面的标签一起计算边距,所以我试图搜索 Android 的某些功能,如android:...,但没有任何结果,如果可能的话,把它放在左手角,以作为你想要放置元素的位置的参考。

任何帮助将不胜感激。

提前致谢!

【问题讨论】:

  • 这是 2015 年,而不是 1990 年。在很长一段时间内,在大多数操作系统(以及要启动的 Web)的大多数现代 GUI 框架中,基于绝对像素坐标设计 GUI 被认为是一种糟糕的形式.

标签: android xml


【解决方案1】:

在 FrameLayout 中设置可能的绝对位置。

使用RelativeLayout比较麻烦,但是看看:

set the absolute position of a view

【讨论】:

  • 感谢您的回答,但我一直在寻找 Android 中的功能以放入 xml 中(例如 android:... 来制作这样的东西,而不是通过代码。无论如何,谢谢。
【解决方案2】:

使用特定像素已过时,因为我们使用“dp”的概念,因为每个设备的像素都没有变化。如果您想放置在某个特定位置,请使用“重力”和“边距”来定位它。这是快速完成的最简单、最好的方法。

【讨论】:

  • 感谢您的回答!我使用的是带边距的 RelativeLayout,但所有项目都放在其他项目后面并且它们重叠。这就是为什么我要求一种将它们静态显示在屏幕上的方法。
猜你喜欢
  • 2015-10-08
  • 2022-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-03
  • 2022-12-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多