为什么EditText在TableLayout内部不会包装它的行?

时间:2012-09-26 03:41:52

标签: android android-layout android-edittext android-tablelayout

我注意到当我将EditText(或两个)放在单个TableLayout行中时,文本将不会换行。

我想了解这里发生了什么,以及是否有正确的方法在EditText内使用多行TableRow(或两个)。

以下布局文件:

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TableRow>

        <EditText
            android:layout_width="match_parent"
            android:hint="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
            android:minLines="3" />
    </TableRow>

</TableLayout>

导致以下布局没有换行(我假设View实际上超出了屏幕的右边界。):

enter image description here

但是,添加android:stretchColumns="0"或省略TableRow标记适用于一个EditText但不适用于两个:

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <EditText
        android:layout_width="match_parent"
        android:hint="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
        android:minLines="3" />

</TableLayout>

enter image description here

1 个答案:

答案 0 :(得分:1)

尝试将其用作EditText属性:

android:scrollHorizontally="false"