键盘进入Android时,EditText超出了窗口范围

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了键盘进入Android时,EditText超出了窗口范围相关的知识,希望对你有一定的参考价值。

在我的manifest.xml中,我将其设置为我当前的Activity

<activity
        android:name=".StockAdjustment"
        android:theme="@style/CustomActionBarTheme"
        android:label="@string/Metrix"
        android:windowSoftInputMode="adjustResize" >
    </activity>

我的问题是当键盘出现我的EditText上升太多。它超出了视图的上限,甚至无法看到我正在输入的内容。无论我为android:windowSoftInputMode="adjustResize"投入的是什么,都会有同样的结果。

请帮我。谢谢

UPDATE

This is my layout

更新2

<ScrollView
        style="@style/ScrollViewBase.Normal.Vertical"
        android:layout_weight="1"
        tools:isScrollContainer="false">
答案

设置android:windowSoftInputMode="stateVisible|adjustPan|adjustResize"

此外,如果您的布局中有ScrollView,请将android:isScrollContainer="false"添加到您的ScrollView

另一答案

试试这个,并将android:fitsSystemWindows="true"设置为父布局元素。

<ScrollView
    style="@style/ScrollViewBase.Normal.Vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:isScrollContainer="false">
另一答案

最后,我实现了更改layout.xml的结构。我将布局xml文件更改为此

<LinearLayout style="@style/LinearBase.Normal.Vertical" >

            <ScrollView
                style="@style/ScrollViewBase.Normal.Vertical"
                android:layout_weight="1"
                android:fitsSystemWindows="true"
                tools:isScrollContainer="false">
                <LinearLayout style="@style/LinearBase.Normal.Vertical">
                    <LinearLayout
                        android:id="@+id/table_layout"
                        style="@style/LinearBase.Normal.Vertical"
                        android:focusable="true"
                        android:focusableInTouchMode="true">

                        <TextView
                            style="@style/TextViewBase.Title"
                            android:tag="SCREEN_LABEL"></TextView>

                        <TextView
                            style="@style/TextViewBase.Emphasis"
                            android:tag="SCREEN_TIP"></TextView>

                    </LinearLayout>

                    <ListView
                        android:id="@+id/serialList"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent" />

                </LinearLayout>

            </ScrollView>

            <include layout="@layout/stock_adjustment_menu_bar" />

</LinearLayout>

以前,我的Scrollview正在缩小/缩小,然后ListViewgoing,我无法看到ScrollView内的内容。在我更改了布局结构之后,我的整个内容(Textviews,EditTexts由代码和ListView添加)都在一个ScrollView中。因此,考虑到Scrollview内部的全部内容,就会发生萎缩/呻吟。

确保在触摸ListView时禁用父视图的滚动

以上是关于键盘进入Android时,EditText超出了窗口范围的主要内容,如果未能解决你的问题,请参考以下文章

Android进入页面开始就自动弹出软键盘

Android进入一个新页面,EditText失去焦点并禁止弹出键盘

Android:为EditText打开键盘时处理后退按钮单击

触摸编辑时,Android 键盘视图位于 EditText 前面

Android - 动画发生后键盘不会出现在edittext

Android 键盘隐藏 EditText