安卓EditText点击导航错误

4
在下面的图片中,您可以看到2个漂亮地并排放置的EditText。当我点击一个EditText时,它会导航到视图(没有问题)。但是当我点击它旁边的EditText时,导航会让我向上移动一点而不是保持相同的高度。另一个问题是当我点击前一个EditText时,会出现高度错误并隐藏EditText

enter image description here

点击第一个(确定)

enter image description here

点击下一个(问题)

enter image description here

点击返回前一个页面(最大的问题),我会停留在视图下方一点点。

enter image description here

代码:

<activity
            android:name=".activity.ReportsEditActivity"
            android:configChanges="orientation|screenSize"
            android:label="@string/title_activity_reports_edit"
            android:parentActivityName=".activity.MainActivity"
            android:windowSoftInputMode="adjustResize|stateVisible">
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".activity.MainActivity" />
        </activity>

编辑文本:

<EditText
        android:id="@+id/report_template_grid_single_line_edit_text"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginEnd="@dimen/grid_padding"
        android:layout_marginStart="@dimen/grid_padding"
        android:inputType="text"
        android:maxHeight="@dimen/grid_element_max_height"
        android:maxLines="1"
        android:minHeight="@dimen/grid_element_min_height"
        android:paddingBottom="@dimen/grid_element_top_and_bottom_padding"
        android:gravity="top|start"
        android:paddingEnd="@dimen/grid_element_top_and_bottom_padding"
        android:paddingStart="@dimen/grid_element_top_and_bottom_padding"
        android:paddingTop="@dimen/grid_element_top_and_bottom_padding"
        android:textColor="@color/darkGray"
        android:textSize="@dimen/grid_text_size_small" />

尝试在清单文件中添加窗口软输入的adjust pan。 - Jins Lukose
你的整个布局文件是什么样子的?根据开发者网站上的说法:“……如果您使用相对布局将按钮栏放置在屏幕底部,使用“adjustResize”会调整布局,以便按钮栏出现在输入法之上。”因此,我最好的猜测是Android可能会混淆根据您的布局或甚至您的Java代码来绘制视图的位置,这取决于您如何处理EditText视图的单击监听器。(因为它可能记得之前在哪个EditText中,并且当返回到该视图时可以为该视图激活监听器,也可能在您离开之前激活。) - Mr.Drew
需要查看更多信息 - 请提供完整的XML布局和Activity类。 - Mardann
你能分享一下这个项目吗? - deadfish
1个回答

0
根据开发者文档在这里。https://developer.android.com/guide/topics/manifest/activity-element 调整大小保持活动的主窗口始终被调整大小以为屏幕上的软键盘腾出空间。
因此,您可能需要使用调整面板之类的东西。
 <activity android:windowSoftInputMode="adjustPan"> </activity>

当用户按下返回键时,您可以在onBackPressed方法中处理返回键事件以隐藏软键盘。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接