Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在相对布局中动态添加组件_Java_Android_Android Layout - Fatal编程技术网

Java 在相对布局中动态添加组件

Java 在相对布局中动态添加组件,java,android,android-layout,Java,Android,Android Layout,我有一个xml结构,比如 <TextView android:id="@+id/txt1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginTop="26d

我有一个xml结构,比如

<TextView
    android:id="@+id/txt1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:layout_marginTop="26dp"
    android:minWidth="20dp"
    android:text="05"
    android:background="@drawable/rounded_corners"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/txt2"
    style="android:textViewStyle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="false"
    android:layout_alignParentTop="true"
    android:layout_marginTop="26dp"
    android:layout_toRightOf="@+id/txt1"
    android:background="@drawable/rounded_corners"
    android:minWidth="20dp"
    android:text=""
    android:paddingLeft="5dp"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/txt3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="false"
    android:layout_alignParentTop="true"
    android:layout_marginTop="26dp"
    android:layout_toRightOf="@+id/txt2"
    android:background="@drawable/rounded_corners"
    android:minWidth="20dp"
    android:text=""
    android:paddingLeft="5dp"
    android:textAppearance="?android:attr/textAppearanceMedium" />
...
但我不知道如何设置
layout\u alignParentLeft
layout\u marginTop
,最关心的是
layout\u-toRightOf
部分


如果有人能帮我举一个这样的例子,那就太好了……

你必须用
RelativeLayout.LayoutParams
添加规则来完成你想要的

像这样的

用于将视图与另一视图的右侧对齐

rel.addRule(RelativeLayout.RIGHT_OF, tv.getId());
用于在父视图中向左对齐视图

rel.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
给利润

rel.setMargins(50, 10, 0, 0);

谢谢你的快速回答。但如果我做了
tv.getId()
它会给我-1和生成id,如果我做了
tv.generateWiid()
它仍然不会生成相同的id。原因是两个文本都显示在另一个文本之上。有没有其他办法解决这个问题?
rel.setMargins(50, 10, 0, 0);