android - 单击 EditText View 时,虚拟键盘会阻止下面的按钮

标签 android keyboard android-edittext window-soft-input-mode adjustpan

我的 Activity 底部附近有一个 editText View 。当我单击它时键盘显示,但它阻止了 editText 下面的按钮。我使用 android:windowSoftInputMode="adjustResize"或 "adjustPan"但没有按我想要的方式工作。

以下是一些截图:

原始 View :Original View

当点击编辑文本时: When click the edittext

我想要的 View : The View i want

这是我的代码:

<include
    android:id="@+id/headerView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    layout="@layout/section_header" />

<ScrollView
    android:id="@+id/scrollview"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@+id/headerView"
    android:fillViewport="true" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

        <com.wom.wom.GTextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="80dp"
            android:gravity="center_horizontal"
            android:text="NOT OUR MEMBER YET?"
            android:textSize="28sp" />

        <com.wom.wom.GTextView
            android:layout_width="200dp"
            android:layout_height="50dp"
            android:layout_gravity="center_horizontal"
            android:layout_marginTop="50dp"
            android:background="@drawable/rounded_corner0"
            android:gravity="center"
            android:text="TAKE THE TOUR"
            android:textSize="18sp" />

        <com.wom.wom.ATextView
            android:id="@+id/join_now"
            android:layout_width="200dp"
            android:layout_height="50dp"
            android:layout_gravity="center_horizontal"
            android:layout_marginBottom="50dp"
            android:layout_marginTop="30dp"
            android:background="@drawable/rounded_corner_green"
            android:gravity="center"
            android:text="JOIN NOW"
            android:textColor="#FFF"
            android:textSize="18sp" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="80dp"
            android:layout_marginTop="10dp"
            android:background="@drawable/m_dash_black"
            android:gravity="center_horizontal|bottom"
            android:orientation="horizontal" >

            <com.wom.wom.ATextView
                android:id="@+id/tv_add_card"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginRight="50dp"
                android:gravity="center"
                android:text="ADD CARD"
                android:textColor="@drawable/text_selector_wo"
                android:textSize="22sp" />

            <View
                android:id="@+id/vDottedLine"
                android:layout_width="30dp"
                android:layout_height="match_parent"
                android:layout_marginBottom="5dp"
                android:layout_marginLeft="10dp"
                android:layout_marginTop="15dp"
                android:background="@drawable/vdash_line2"
                android:layerType="software" />

            <com.wom.wom.ATextView
                android:id="@+id/tv_scan_card"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="50dp"
                android:gravity="center"
                android:text="SCAN CARD"
                android:textColor="@drawable/text_selector_wo"
                android:textSize="22sp" />
        </LinearLayout>

        <RelativeLayout
            android:id="@+id/add_card"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/card_bg" >

            <EditText
                android:id="@+id/card_number"
                android:layout_width="300dp"
                android:layout_height="50dp"
                android:layout_below="@+id/tv3"
                android:layout_marginLeft="50dp"
                android:layout_marginTop="100dp"
                android:background="#FFF"
                android:hint="14 Digit Number"
                android:paddingLeft="5dp"
                android:textSize="20sp" />

            <EditText
                android:id="@+id/password"
                android:layout_width="300dp"
                android:layout_height="50dp"
                android:layout_below="@+id/card_number"
                android:layout_marginLeft="50dp"
                android:layout_marginTop="20dp"
                android:background="#FFF"
                android:hint="Password"
                android:paddingLeft="5dp"
                android:textSize="20sp" />

            <ScrollView
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1" />

            <com.wom.wom.ATextView
                android:id="@+id/ib_add_card"
                android:layout_width="200dp"
                android:layout_height="50dp"
                android:layout_alignParentBottom="true"
                android:layout_centerHorizontal="true"
                android:layout_marginBottom="20dp"
                android:background="@drawable/rounded_corner_red"
                android:gravity="center"
                android:text="ADD MY CARD"
                android:textColor="#FFF"
                android:textSize="18sp" />
        </RelativeLayout>

        <RelativeLayout
            android:id="@+id/scan_card"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/scan_bg"
            android:visibility="gone" >

            <com.wom.wom.ATextView
                android:id="@+id/ib_scan_card"
                android:layout_width="200dp"
                android:layout_height="50dp"
                android:layout_alignParentBottom="true"
                android:layout_centerHorizontal="true"
                android:layout_marginBottom="20dp"
                android:background="@drawable/rounded_corner_red"
                android:gravity="center"
                android:text="SCAN MY CARD"
                android:textColor="#FFF"
                android:textSize="18sp" />
        </RelativeLayout>
    </LinearLayout>
</ScrollView>

</RelativeLayout>

最佳答案

您应该在 <activity> 中添加此属性manifest 的标签文件。

<activity
    android:windowSoftInputMode="adjustPan"
    //rest attributes ...
/>

编辑

如果添加adjustPanmanifest不起作用,然后将其添加到 java 代码中,

内部onCreate()设置contentView写入后的方法,

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

关于android - 单击 EditText View 时,虚拟键盘会阻止下面的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28848405/

相关文章:

android - 使用 TextWatcher 在 EditText 中设置最大字数限制

android - 如何清除 android 中 titanium 应用程序中堆大小的增长?

java - 在fragment中依次显示两个Listview

c++ - SetWindowsHookEx 在快速输入或按住键盘按钮时卡住

c# - 如何捕获 Ctrl+Shift+N?

ios - iOS 自定义键盘中的自适应返回/转到/换行按钮

android - 在 EditText 上禁用键盘

java - 从 android 中的 EditText 字段设置对象值

android - 如何在 Android 中实现主题标签 View ?

java - EditText View 返回 null