EditText不会在第二个条目上自动滚动

时间:2014-06-22 06:03:24

标签: android android-edittext

我的布局中有一个editText字段:

<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"
tools:context="com.dyces.teacher.app.MainActivity"> -->

<ImageView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:src="@drawable/snowcitblacker"
    android:scaleType="centerCrop" />


<ImageView
    android:layout_width="250dp"
    android:layout_height="250dp"
    android:src="@drawable/nocovertranss"
    android:scaleType="fitCenter"
    android:minWidth="450px"
    android:minHeight="450px"
    android:id="@+id/teachName"
    android:layout_alignParentTop="true"
    android:layout_marginTop="20dp"
    android:layout_alignLeft="@+id/guess"
    android:layout_alignStart="@+id/guess" />

<ImageView
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:src="@drawable/play"
    android:layout_below="@+id/teachName"
    android:layout_centerHorizontal="true"
    android:layout_alignParentTop="true"
    android:layout_marginTop="270dp"
    android:id="@+id/play"/>

<ImageView
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:src="@drawable/pause"
    android:layout_toLeftOf="@+id/play"
    android:layout_alignBottom="@+id/play"
    android:id="@+id/pause"/>

<ImageView
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:src="@drawable/stop"
    android:layout_toRightOf="@+id/play"
    android:layout_alignBottom="@+id/play"
    android:id="@+id/stop"/>

<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:minWidth="250dp"
    android:minHeight="50dp"
    android:hint="Enter Guess Here"
    android:textColorHint="#ffffff"
    android:textColor="#ffffff"
    android:gravity="center"
    android:id="@+id/guess"
    android:paddingBottom="10dp"
    android:layout_below="@+id/play"
    android:layout_alignLeft="@+id/button2"
    android:layout_alignStart="@+id/button2"
    android:layout_marginTop="34dp"
    android:inputType="textNoSuggestions"/>

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Check"
    android:textColor="#F0EEEE"
    android:background="@drawable/buttonback"
    android:minWidth="250dp"
    android:id="@+id/button2"
    android:layout_marginTop="33dp"
    android:layout_below="@+id/guess"
    android:layout_centerHorizontal="true" />

在我的手机上运行应用程序时,当我点击editText字段时,布局会自行调整,以使editText字段位于键盘正上方并且可见。 问题是当我尝试再次点击该字段时(在最小化键盘之后),布局不会调整此时间。

在下面的两张图片中,在第一张屏幕截图中,&#34;输入Guess Here&#34;是editText字段的提示,但在第二个屏幕截图中,此字段现在被键盘隐藏。第二个屏幕截图是在键盘最小化并点击字段后拍摄的。

"Enter Guess Here" is the hint for the <code>editText</code> field

As evident the field is now hidden by the keyboard

2 个答案:

答案 0 :(得分:0)

这种情况正在发生,因为您没有使用ScrollView作为根容器。如果您将RelativeLayout放在ScrollView内,则可能会有效。

答案 1 :(得分:0)

Try to use Scroll View, Put all your code inside scroll view and check for the output, thanks
<?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"
    android:orientation="vertical" >

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            tools:context="com.dyces.teacher.app.MainActivity" >

            <ImageView
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:scaleType="centerCrop"
                android:src="@drawable/snowcitblacker" />

            <ImageView
                android:id="@+id/teachName"
                android:layout_width="250dp"
                android:layout_height="250dp"
                android:layout_alignLeft="@+id/guess"
                android:layout_alignParentTop="true"
                android:layout_alignStart="@+id/guess"
                android:layout_marginTop="20dp"
                android:minHeight="450px"
                android:minWidth="450px"
                android:scaleType="fitCenter"
                android:src="@drawable/nocovertranss" />

            <ImageView
                android:id="@+id/play"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_alignParentTop="true"
                android:layout_below="@+id/teachName"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="270dp"
                android:src="@drawable/play" />

            <ImageView
                android:id="@+id/pause"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_alignBottom="@+id/play"
                android:layout_toLeftOf="@+id/play"
                android:src="@drawable/pause" />

            <ImageView
                android:id="@+id/stop"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_alignBottom="@+id/play"
                android:layout_toRightOf="@+id/play"
                android:src="@drawable/stop" />

            <EditText
                android:id="@+id/guess"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/button2"
                android:layout_alignStart="@+id/button2"
                android:layout_below="@+id/play"
                android:layout_marginTop="34dp"
                android:gravity="center"
                android:hint="Enter Guess Here"
                android:inputType="textNoSuggestions"
                android:minHeight="50dp"
                android:minWidth="250dp"
                android:paddingBottom="10dp"
                android:textColor="#ffffff"
                android:textColorHint="#ffffff" />

            <Button
                android:id="@+id/button2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/guess"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="33dp"
                android:background="@drawable/buttonback"
                android:minWidth="250dp"
                android:text="Check"
                android:textColor="#F0EEEE" />
        </RelativeLayout>
    </ScrollView>

</RelativeLayout>