软键盘隐藏编辑文本

时间:2019-01-14 15:48:12

标签: java android android-edittext keyboard

我正在创建一个登录页面,并且有两个普通的凭据编辑文本字段, 第一个是电话号码,输入类型是数字,可以, 这是第二个密码编辑文本的问题,我将输入类型设置为textPassword,并且需要将两个编辑文本的文本方向都设置为RTL,所以我将重力设置为右,而在Android 6.0.1中将重力设置为右键盘填充编辑文本(隐藏编辑文本字段),而我看不到正在输入的内容。

这是我的xml代码:

 <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="ir.samanjafari.recycelerviewitemanimation.LoginActivity">

 <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="forgot password"/>

<ImageView
    android:id="@+id/logo"
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="20dp"
    android:src="@mipmap/ic_launcher_round"
    />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="How are you guys?"
    android:textSize="15sp"
    android:textColor="#000"
    android:layout_centerHorizontal="true"
    android:layout_below="@id/logo"
    android:layout_marginTop="15dp"/>

<LinearLayout
    android:id="@+id/fields_lyt"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:orientation="vertical">

    <EditText
        android:layout_width="280dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:hint="Phone"
        android:gravity="right"
        android:inputType="phone"/>

    <EditText
        android:layout_width="280dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:hint="Password"
        android:inputType="textPassword"
        android:gravity="right"
        android:layout_marginTop="15dp"/>
</LinearLayout>

<Button
    android:layout_width="280dp"
    android:layout_height="wrap_content"
    android:layout_below="@id/fields_lyt"
    android:layout_centerHorizontal="true"
    android:text="Login"
    android:layout_marginTop="40dp"/>

2 个答案:

答案 0 :(得分:0)

在Android Manifest文件中,尝试为LoginActivity添加以下属性:

8(?:00|55|66|77|88)

或  android:windowSoftInputMode="adjustPan"

这将调整视图,以便键盘不会隐藏它们。该模式有不同的选项。看看official documentation,看看哪一个最适合您的需求。

答案 1 :(得分:0)

使用Scrollview并在子布局中设置android:fitsSystemWindows =“ true”,其他方法是在清单中的特定活动标签中使用android:windowSoftInputMode =“ adjustPan”