我最近开始学习android。我正在创建一个类似
的布局
在图片中:我点击按钮,文字将填充一些值 然后我希望动态调整第二个文本的位置。
目前两者都重叠。
我的XML文件是
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="2.5" >
<Button
android:id="@+id/get_address_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:onClick="getAddress"
android:text="@string/get_address" />
<TextView
android:id="@+id/label_address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/get_address_button"
android:layout_marginTop="21dp"
android:text="@string/address"
android:textSize="12sp" />
<ProgressBar
android:id="@+id/address_progress"
style="@android:style/Widget.ProgressBar.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/label_address"
android:layout_centerHorizontal="true"
android:indeterminate="true"
android:visibility="gone" />
<TextView
android:id="@+id/address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/label_address"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/label_address"
android:textIsSelectable="true"
android:textSize="20sp" />
<TextView
android:id="@+id/label_distance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/label_address"
android:layout_marginTop="21dp"
android:text="@string/distance"
android:textSize="12sp" />
<Spinner
android:id="@+id/location_spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/label_distance"
android:layout_toRightOf="@+id/label_distance"
/>
</RelativeLayout>
任何帮助。
由于
答案 0 :(得分:1)
试试这个布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent" >
<Button
android:id="@+id/get_address_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:onClick="getAddress"
android:text="getAddress" />
<LinearLayout
android:id="@+id/text_parent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/get_address_button" >
<TextView
android:id="@+id/label_address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="21dp"
android:text="Address
this is line 1
this is line 2
this is line 3
"
android:textSize="12sp" />
<TextView
android:id="@+id/address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/label_address"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/label_address"
android:textIsSelectable="true"
android:textSize="20sp" />
</LinearLayout>
<ProgressBar
android:id="@+id/address_progress"
style="@android:style/Widget.ProgressBar.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/label_address"
android:layout_centerHorizontal="true"
android:indeterminate="true"
android:visibility="gone" />
<TextView
android:id="@+id/label_distance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/get_address_button"
android:layout_marginTop="21dp"
android:text="Distance"
android:textSize="12sp" />
<Spinner
android:id="@+id/location_spinner"
android:layout_width="120dp"
android:layout_height="60dp"
android:layout_below="@+id/text_parent"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp" />
</RelativeLayout>
答案 1 :(得分:0)
使用RelativeLayout
和属性android:below="@+id/idofyourmultilineedittext"
执行此操作
希望它有所帮助
答案 2 :(得分:0)
我不知道你想把它放在哪里,但是如果你想把你的第二个文字放在左/右/底部/顶部那么你可以做这样的事情
1)参考你的第二个文本视图并使用 的 yourTextView.setGravity(GRAVITY.LEFT /右/上/ BOTTOM)强>