gpt4 book ai didi

java - 如何在相对布局或任何布局中动态添加 View

转载 作者:行者123 更新时间:2023-12-02 01:01:18 24 4
gpt4 key购买 nike

嗯,我的问题有点复杂(对我来说)。假设我有一个 RelativeLayout(或根据需要的任何其他 Layout)。

现在我制作一些View,例如TextView。(多个View)。这些View将包括我将从java代码中给出的以下特征。

  1. 我想将 View 添加到布局的特定位置。
  2. 两个或多个View可以重叠(如下图所示)
  3. 它是一种AddView(child,positionX,width,height);我知道没有这样的方法。但我需要一个。

其中positionX将是一个整数,定义View将在Layout中从顶部设置的位置。

现在我想将这些 View 添加到 Layout 中,如下图所示。

enter image description here

(所有View都将是矩形大小;抱歉编辑不好。)

我该怎么做?我非常需要解决方案。

我希望我已经用我糟糕的英语解释了我的问题:(

提前谢谢您<3 <3

最佳答案

正如您所提到的,

All View will be of rectangular size

让我们以按钮 yourButton 为例。您需要传递两个值,一个从顶部开始,一个从左侧开始放置 View 。然后根据您的需要使用以下方法 addView()RelativeLayout 中实现所需的输出:

private void addView(child, positionFromTop, positionFromLeft, width, height) {
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
layoutParams.topMargin = (int)(positionFromTop);
layoutParams.leftMargin = (int)(positionFromLeft);
yourButton.setLayoutParams(layoutParams);
}

如果需要,您可以通过编程以类似的方式使用宽度和高度自定义布局。请引用这个answer获取如何以编程方式调整自定义 View 大小的代码。希望对您有帮助!

关于java - 如何在相对布局或任何布局中动态添加 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60598302/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com