键盘可见或点按时,EditText隐藏在Button后面

时间:2016-07-14 13:03:29

标签: android android-layout android-xml android-softkeyboard

我在谷歌搜索了很多,我找到了很多解决方案,但没有什么对我有用。我正在制作屏幕截图,以解释面对这个问题的地点和原因。

带软键盘图像的正常屏幕:

img1

软键盘外观按钮隐藏上一个编辑文本:

img2

在这个布局中我使用了相对布局和滚动视图以及我从谷歌使用的那个解决方案。把它放到清单文件中

android:windowSoftInputMode="stateVisible|adjustResize"

所以我正在寻找有价值的建议和意见。如果您无法理解我的疑问,请向我询问。 感谢您提供宝贵的时间和支持

这里我正在更新我编写的XML文件代码。

  <?xml version="1.0" encoding="utf-8"?>
<ScrollView 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"
    android:fillViewport="true">

    <RelativeLayout

        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context="com.example.yadapras.mobiltyemp.Registration"
        android:orientation="vertical">

    <EditText
        android:id="@+id/user_name1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_name"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="50dp"/>

    <EditText
        android:id="@+id/user_pass"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_password"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_name1"/>

    <EditText
        android:id="@+id/user_re_pass"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_re_password"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_pass"/>

    <EditText
        android:id="@+id/user_full_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_fullname"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_re_pass"/>

    <EditText
        android:id="@+id/user_mail"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_email"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_full_name"/>

    <EditText
        android:id="@+id/user_ph_no"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_ph_no"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_mail"/>

    <EditText
        android:id="@+id/user_emei_No"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Device IMEI No"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_ph_no"
        />

     <EditText
         android:id="@+id/user_device_model"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:hint="Device Model"
         android:layout_marginLeft="15dp"
         android:layout_marginRight="15dp"
         android:layout_marginTop="5dp"
         android:layout_below="@+id/user_emei_No"/>

        <EditText
            android:id="@+id/user_OS_Version"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="OS Version"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:layout_marginTop="5dp"
            android:layout_below="@+id/user_device_model" />

        <Button
        android:id="@+id/reg_button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/register"
        android:layout_alignParentBottom="true"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:textStyle="bold|italic"
       />
    </RelativeLayout>

</ScrollView>

3 个答案:

答案 0 :(得分:1)

尝试此代码.. !!

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@mipmap/login_bg">
<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">


    <RelativeLayout

        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context="com.example.yadapras.mobiltyemp.Registration"
        android:orientation="vertical">

    <EditText
        android:id="@+id/user_name1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_name"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="50dp"/>

    <EditText
        android:id="@+id/user_pass"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_password"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_name1"/>

    <EditText
        android:id="@+id/user_re_pass"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_re_password"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_pass"/>

    <EditText
        android:id="@+id/user_full_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_fullname"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_re_pass"/>

    <EditText
        android:id="@+id/user_mail"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_email"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_full_name"/>

    <EditText
        android:id="@+id/user_ph_no"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/reg_ph_no"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_mail"/>

    <EditText
        android:id="@+id/user_emei_No"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Device IMEI No"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="5dp"
        android:layout_below="@+id/user_ph_no"
        />

     <EditText
         android:id="@+id/user_device_model"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:hint="Device Model"
         android:layout_marginLeft="15dp"
         android:layout_marginRight="15dp"
         android:layout_marginTop="5dp"
         android:layout_below="@+id/user_emei_No"/>

        <EditText
            android:id="@+id/user_OS_Version"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="OS Version"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:layout_marginTop="5dp"
            android:layout_below="@+id/user_device_model" />

        <Button
        android:id="@+id/reg_button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/register"
        android:layout_alignParentBottom="true"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:textStyle="bold|italic"
       />
    </RelativeLayout>

    </LinearLayout>
</ScrollView>
</RelativeLayout>

答案 1 :(得分:0)

试试这个..

你的android清单文件中的

android:windowSoftInputMode="stateHidden|adjustPan"

答案 2 :(得分:0)

只需将此属性添加到Button

即可
  android:layout_below="@+id/user_OS_Version"

完整代码:

 <Button
                android:id="@+id/reg_button"
                android:layout_below="@+id/user_OS_Version"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="register"
                android:layout_alignParentBottom="true"
                android:layout_marginLeft="15dp"
                android:layout_marginRight="15dp"
                android:textStyle="bold|italic"
                />

输出

enter image description here