隐藏显示键盘问题,显示键盘后面的彩色背景

时间:2017-11-22 05:10:44

标签: android android-softkeyboard

当聚焦输入区域时,键盘后面会出现彩色(colorPrimary)背景(有时它会在键盘上方延伸至20-30px,覆盖视图)。隐藏键盘使得背景在键盘被隐藏之后以及在它消失之前可见约200-300ms。我也附了一个屏幕截图 -

enter image description here

我尝试过设置(我正在使用片段而非活动) -

android:windowSoftInputMode="adjustPan"

以下是我的布局 -

                <android.support.design.widget.TextInputLayout
                    android:id="@+id/til_password"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/layout_mobile_number"
                    android:layout_marginBottom="@dimen/margin_8dp"
                    app:errorText="@{viewModel.passwordError}">
                    >
                    <EditText
                        style="@style/TextInputLayoutEditText"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:drawableLeft="@drawable/password"
                        android:hint="@string/password"
                        android:inputType="textPassword"
                        android:onTextChanged="@{(text, start, before, count) -> viewModel.onPasswordTextChanged()}"
                        android:text="@={viewModel.password}"
                        />

             </android.support.design.widget.TextInputLayout>

这是我的文字风格 -

<style name="TextInputLayoutEditText" parent="@android:style/Widget.EditText">
        <item name="android:drawablePadding">@dimen/drawable_icon_padding</item>
        <item name="android:paddingLeft">@dimen/drawable_icon_padding_left</item>
        <item name="android:textSize">@dimen/common_font_size</item>
        <item name="android:textColor">@color/commonFontColor</item>
        <item name="android:textColorHint">@color/commonHintColor</item>
    </style>

我的父母活动是 -

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/colorPrimary"
    android:fitsSystemWindows="true">

    <LinearLayout
        android:id="@+id/ll_top_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        ..../>
.....
</android.support.v4.widget.DrawerLayout>

1 个答案:

答案 0 :(得分:0)

通常当键盘打开/隐藏时,它会将背景颜色视为阴影,如果是白色,我们无法在白色屏幕上看到效果,因此我将其更改为白色,这就是全部。

下面是我的主要活动,它正在抓住我遇到问题的片段,我的片段颜色是白色但我的主要活动颜色不是白色,这就是我遇到问题的原因。

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white"
    android:fitsSystemWindows="true">

    <LinearLayout
        android:id="@+id/ll_top_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        ..../>
.....
</android.support.v4.widget.DrawerLayout>