如果我写一条长行,EditText没有显示我正在写的内容

时间:2014-02-14 08:51:09

标签: android android-layout

我做了一个像下面这样的布局,但问题是当我写一些长行是一个editText时 - 焦点不再与光标一起使用了。我的意思是,如果线条太长,我无法看到我在写什么。该怎么办?

<LinearLayout 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"
tools:context=".CityActivity"
android:orientation="vertical" >


<TableLayout
    android:id="@+id/tableLayoutctentry"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
    android:paddingRight="3dp"> 
    <TableRow
              android:id="@+id/tableRowctyentry1"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"  
              android:paddingRight="3dp">
        <TextView
            android:id="@+id/aTextView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Name" />

        <EditText
            android:id="@+id/cityNameEditText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="15dp" >

            <requestFocus />
        </EditText>

    </TableRow>

  <TableRow
              android:id="@+id/tableRowctyentry2"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"  >
        <TextView
            android:id="@+id/nTextView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="About" />
        <EditText
             android:id="@+id/cityAboutEditText"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content" 
             android:textSize="15dp" />
    </TableRow>
     </TableLayout>
</LinearLayout>

5 个答案:

答案 0 :(得分:0)

您已在XML中指定android:textSize="15dp"将其删除并检查。试试如下。

<EditText
             android:id="@+id/cityAboutEditText"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content" 
 />

 <EditText
            android:id="@+id/cityNameEditText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
 />

并将宽度和高度设置为wrap_content而不是match_parent

答案 1 :(得分:0)

上面链接中的

http://www.beginandroid.com/keyboard.shtml只更改了suggastion文本

答案 2 :(得分:0)

替换此

android:layout_width="match_parent"

android:layout_width="wrap_content"

在TextView中。

所以现在你的代码应该是

<LinearLayout 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"
tools:context=".CityActivity"
android:orientation="vertical" >


<TableLayout
android:id="@+id/tableLayoutctentry"
android:layout_width="wrap_content"
android:layout_height="wrap_content" 
android:paddingRight="3dp"> 
<TableRow
          android:id="@+id/tableRowctyentry1"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"  
          android:paddingRight="3dp">
    <TextView
        android:id="@+id/aTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Name" />

    <EditText
        android:id="@+id/cityNameEditText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="15dp" >

        <requestFocus />
    </EditText>

 </TableRow>

<TableRow
          android:id="@+id/tableRowctyentry2"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"  >
    <TextView
        android:id="@+id/nTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="About" />
    <EditText
         android:id="@+id/cityAboutEditText"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content" 
         android:textSize="15dp" />
</TableRow>
 </TableLayout>

答案 3 :(得分:0)

不要使用此

android:textSize="15dp"

并使用:

         android:layout_width="wrap_content"
         android:layout_height="wrap_content" 



<TextView
            android:id="@+id/aTextView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Name" />

答案 4 :(得分:0)

android:singleLine =“false”添加到 Edittext XML中,然后从 wrap_content 更改 android:layout_width fill_parent 如下......

<EditText
    android:id="@+id/cityAboutEditText"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:singleLine="false" />

您无法看到长文本文本,因为默认情况下, android:singleLine 设置为 true ,当您没有提及手动编写 android时: SINGLELINE = “假”即可。