我已经成功创建了一个适合我的布局,除了一个问题,当输入多行文本时,它与其他EditText字段重叠。通常情况下,当我在一个只是垂直的LinearLayout时,它工作,其余的内容向下移动。但是由于我添加了水平LinearLayouts以获得标签1,2,3 in,多行框不再强制内容在它们周围流动。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".Begin" >
<TextView
android:id="@+id/whathappened"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="22dp"
android:layout_marginTop="22dp"
android:text="@string/whathappened" />
<TextView
android:id="@+id/item1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/whathappened"
android:layout_below="@+id/whathappened"
android:layout_marginTop="22dp"
android:text="@string/one"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/edit1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/item1"
android:layout_alignBottom="@+id/item1"
android:layout_toRightOf="@+id/item1"
android:ems="10"
android:inputType="textMultiLine"
android:lines="3"
android:maxLines="4"
android:minLines="2" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/item2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/whathappened"
android:layout_below="@+id/edit1"
android:layout_marginTop="22dp"
android:text="@string/two"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/edit2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/item2"
android:layout_alignBottom="@+id/item2"
android:layout_toRightOf="@+id/item2"
android:ems="10"
android:inputType="textMultiLine"
android:lines="3"
android:maxLines="4"
android:minLines="2" >
</EditText>
<TextView
android:id="@+id/item3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/whathappened"
android:layout_below="@+id/edit2"
android:layout_marginTop="22dp"
android:text="@string/three"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/edit3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/item3"
android:layout_alignBottom="@+id/item3"
android:layout_toRightOf="@+id/item3"
android:ems="10"
android:inputType="textMultiLine"
android:lines="3"
android:maxLines="4"
android:minLines="2" >
</EditText>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/whathappened"
android:layout_below="@+id/item3"
android:layout_marginTop="22dp"
android:text="@string/save" />
</RelativeLayout>
添加解决方案的屏幕截图:
答案 0 :(得分:1)
// try this way and let me know still have issue...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center">
<TextView
android:id="@+id/whathappened"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/whathappened" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp">
<TextView
android:id="@+id/item1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:text="@string/one"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/edit1"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textMultiLine"
android:lines="3"
android:maxLines="4"
android:minLines="2"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp">
<TextView
android:id="@+id/item2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:text="@string/two"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/edit2"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textMultiLine"
android:lines="3"
android:maxLines="4"
android:minLines="2" >
</EditText>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp">
<TextView
android:id="@+id/item3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:text="@string/three"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/edit3"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textMultiLine"
android:lines="3"
android:maxLines="4"
android:minLines="2" >
</EditText>
</LinearLayout>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:text="save" />
</LinearLayout>