在EditText Android中输入文本时,屏幕不会向上移动

时间:2013-07-10 08:34:04

标签: android android-edittext

当我在模拟器中的EditText中输入文本时,屏幕没有向上移动,所以我无法看到我输入的内容。

我想附上截图,但我还没有所需的声誉。

仅在以下代码中出现此问题。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<EditText
    android:id="@+id/recQsEditText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView1"
    android:layout_alignRight="@+id/textView1"
    android:layout_below="@+id/textView1"
    android:layout_marginTop="16dp"
    android:ems="10"
    android:maxLines="1"
    android:padding="5dip"
    android:scrollbarAlwaysDrawVerticalTrack="true"
    android:scrollbars="vertical" >

    <requestFocus />
</EditText>

<EditText
    android:id="@+id/recAnsEditText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView2"
    android:layout_alignRight="@+id/recQsEditText"
    android:layout_below="@+id/textView2"
    android:layout_marginTop="18dp"
    android:ems="10"
    android:maxLines="1"
    android:padding="5dip"
    android:scrollbarAlwaysDrawVerticalTrack="true"
    android:scrollbars="vertical" />

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="49dp"
    android:text="@string/recoveryInfo"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/recQsEditText"
    android:layout_below="@+id/recQsEditText"
    android:layout_marginTop="73dp"
    android:text="@string/recoveryAnsText"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<Button
    android:id="@+id/setRecQsBtn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/recAnsEditText"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="48dp"
    android:text="@string/saveChangesBtn" />

</RelativeLayout>

同时,它在同一个应用程序的另一个屏幕上正常工作。

工作代码是 -

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<EditText
    android:id="@+id/addUserIdEditText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/textView1"
    android:layout_marginLeft="30dp"
    android:ems="10"
    android:maxLines="1" />

<EditText
    android:id="@+id/addTitleEditText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/TextView01"
    android:layout_below="@+id/TextView01"
    android:ems="10" 
    android:maxLines="1" >

    <requestFocus />
</EditText>

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/addUserIdEditText"
    android:layout_below="@+id/addTitleEditText"
    android:text="@string/userIdInputText"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/TextView02"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/addUserIdEditText"
    android:layout_below="@+id/addUserIdEditText"
    android:text="@string/passwordInputText"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/TextView01"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView1"
    android:layout_alignParentTop="true"
    android:layout_marginTop="26dp"
    android:text="@string/titleInputText"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/addPasswordEditText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/TextView02"
    android:layout_alignRight="@+id/addUserIdEditText"
    android:layout_below="@+id/TextView02"
    android:ems="10"
    android:inputType="textPassword"
    android:maxLines="1" />

<TextView
    android:id="@+id/TextView03"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/addPasswordEditText"
    android:layout_below="@+id/addPasswordEditText"
    android:text="@string/loginURLinputText"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/addLoginUrlEditText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/TextView03"
    android:layout_below="@+id/TextView03"
    android:ems="10"
    android:maxLines="1" />

<EditText
    android:id="@+id/addOtherNotesEditText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView2"
    android:layout_below="@+id/textView2"
    android:ems="10"
    android:maxLines="2" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/addLoginUrlEditText"
    android:layout_below="@+id/addLoginUrlEditText"
    android:text="@string/otherNotesInputText"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<Button
    android:id="@+id/saveButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/addOtherNotesEditText"
    android:layout_marginTop="36dp"
    android:layout_toRightOf="@+id/textView2"
    android:onClick="saveOnClick"
    android:text="@string/saveBtn" />

</RelativeLayout>

我正在努力弄清楚它为什么不起作用。请帮忙!

1 个答案:

答案 0 :(得分:1)

在AndroidManifest文件中,

添加

android:windowSoftInputMode="adjustPan"  

到您的活动课程。

示例:

 <activity
        android:name=".YourActivity"
        android:label="@string/app_name"
        android:windowSoftInputMode="adjustPan" />

这会将editText正确调整为软键盘。查看其他选项以满足您的需求。