显示按钮时,键盘会隐藏按钮

时间:2013-07-18 12:43:57

标签: android

我正在使用数字键盘屏幕开发Android应用程序。

我有这个屏幕:

keypad screen, keyboard closed

但是当显示键盘时,这就是我所看到的:

keypad screen, keyboard opened

“Aceptar”按钮被键盘隐藏。

这是layout.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/RelativeLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/fondo_5"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textMessages"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="56dp"
        android:gravity="center"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/textSubMessages"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="116dp"
        android:gravity="center"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <CheckBox
        android:id="@+id/checkRemenberPassword"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/editSecondNum"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="36dp"
        android:text="@string/layout_check_remember_password" />

    <Button
        android:id="@+id/btnAccept"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/checkRemenberPassword"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="34dp"
        android:onClick="onAcceptClick"
        android:text="@string/btn_accept" />

    <EditText
        android:id="@+id/editFirstNum"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="14dp"
        android:layout_marginTop="191dp"
        android:ems="1"
        android:inputType="number"
        android:lines="1"
        android:maxLength="1"
        android:maxLines="1"
        android:minLines="1" />

    <EditText
        android:id="@+id/editFourthNum"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_alignBaseline="@+id/editThirdNum"
        android:layout_alignBottom="@+id/editThirdNum"
        android:layout_alignParentRight="true"
        android:layout_marginRight="34dp"
        android:ems="1"
        android:inputType="number"
        android:lines="1"
        android:maxLines="1"
        android:minLines="1" />

    <EditText
        android:id="@+id/editThirdNum"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_alignBaseline="@+id/editSecondNum"
        android:layout_alignBottom="@+id/editSecondNum"
        android:layout_marginRight="42dp"
        android:layout_toLeftOf="@+id/editFourthNum"
        android:ems="1"
        android:inputType="number"
        android:lines="1"
        android:maxLength="1"
        android:maxLines="1"
        android:minLines="1" />

    <EditText
        android:id="@+id/editSecondNum"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_alignBaseline="@+id/editFirstNum"
        android:layout_alignBottom="@+id/editFirstNum"
        android:layout_marginLeft="34dp"
        android:layout_toRightOf="@+id/editFirstNum"
        android:ems="1"
        android:inputType="number"
        android:lines="1"
        android:maxLength="1"
        android:maxLines="1"
        android:minLines="1" />

</RelativeLayout>

我该如何避免这种情况?

2 个答案:

答案 0 :(得分:2)

在AndroidManifest.xml中尝试添加以下内容:

<activity  android:name="com.YOUR.ACTIVITY"
    android:label="@string/app_name"
    android:windowSoftInputMode="adjustPan" >    <--add this bit
</activity>

答案 1 :(得分:2)

尝试添加此

android:windowSoftInputMode="adjustResize"

到AndroidManifest文件中的标记,或者如果不起作用,可以尝试将其添加到布局xml文件中。