在添加新行之前,EditText缺少字符

时间:2012-01-04 09:41:42

标签: android layout android-edittext

我真的不喜欢询问这些小问题,但经过几个小时的挖掘后,它看起来像死路一条。

我在Android中使用EditText时出现了问题。这是非常基本的,并没有适用它的样式。

问题在于,如果我开始在它上面输入,当它达到最后的最大宽度时,它不会添加换行符而是神奇地“扩展”EditText宽度,并允许我在实际添加新行之前插入大约10或12个字符。显然所有10-12个字符都“看不见”。我真的不知道为什么会发生这种情况,非常欢迎任何帮助!

这是我的布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center_horizontal"
    android:background="@drawable/fondo_localizacion">

    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" 
        android:layout_margin="5dp"
        android:stretchColumns="1">

        <TableRow >
        <TextView
    android:id="@+id/locationNameLabel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                style="@style/LabelLocalizacion"
                android:gravity="center_vertical"
                android:text="@string/nombre_label">
            </TextView>
            <EditText 
                android:id="@+id/locationName"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                >
            </EditText>     
        </TableRow>
        <!-- La segunda fila tiene el par desc y su valor -->
        <TableRow >
            <TextView
                android:id="@+id/locationDescLabel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                style="@style/LabelLocalizacion"
                android:gravity="center_vertical"
                android:text="@string/desc_label">
            </TextView>
            <EditText 
                android:id="@+id/locationDesc"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                >
            </EditText>     
        </TableRow>

        <TableRow >
            <TextView
                android:id="@+id/locationPicLabel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                style="@style/LabelLocalizacion"
                android:gravity="center_vertical"
                android:text="@string/imagen_label">
            </TextView>
        </TableRow>
</TableLayout>

2 个答案:

答案 0 :(得分:1)

尝试给表行标签提供高度和宽度从tablelayout删除android:stretchColumns =“1”并将edittext的权重设置为1,修改后可以使用此布局             

         <TableRow
         android:layout_width="fill_parent"
          android:layout_height="wrap_content" >

        <TextView
        android:id="@+id/locationNameLabel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_vertical"
        android:text="gfg" >
        </TextView>

    <EditText
        android:id="@+id/locationName"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:hint="hjhj" >
       </EditText>
     </TableRow>
     <!-- La segunda fila tiene el par desc y su valor -->

       <TableRow
      android:layout_width="wrap_content"
       android:layout_height="wrap_content" >

       <TextView
        android:id="@+id/locationDescLabel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_vertical"
        android:text="yuiuy" >
      </TextView>

    <EditText
        android:id="@+id/locationDesc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1" >
    </EditText>
</TableRow>

<TableRow
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <TextView
        android:id="@+id/locationPicLabel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_vertical"
        android:text="" >
    </TextView>
</TableRow>

答案 1 :(得分:0)

尝试使用固定数字宽度而不是wrap_content

制作EditText