如何停止在对话框中打开的键盘上调整大小/向上推的活动?

Posted

技术标签:

【中文标题】如何停止在对话框中打开的键盘上调整大小/向上推的活动?【英文标题】:How to stop activity resizing/pushing up on keyboard open in dialog? 【发布时间】:2019-02-08 16:25:42 【问题描述】:

我有一个活动,它应该对键盘打开做出反应,所以在清单中,它有一个属性

 android:windowSoftInputMode="adjustResize"

此外,此活动可以启动一个对话框,该对话框具有 EditText。当它启动对话框时,会显示键盘,向上推对话框(可以)和活动(不可以)。它看起来很难看,我想在对话框可见时禁用向上推送活动。

有什么好办法解决这个问题吗? 目前我正在运行时更改softInputMode,它可以工作但很烦人。

还有为什么滚动视图滚动不能与adjustPan一起使用?

【问题讨论】:

【参考方案1】:

尝试使用adjustPan 而不是adjustResize

【讨论】:

这一行可能是评论。 我用它来对话,它就像一个魅力! 【参考方案2】:

解决方案:

首先,

删除 android:windowSoftInputMode="adjustResize" 甚至不要从运行时更改它。

其次,使用<NestedScrollView> 并为其添加一个名为:

isScrollContainer="true"

如果正是您需要的,请尝试并在此处更新。

【讨论】:

【参考方案3】:

在清单上的活动标签中使用它:

    android:configChanges="orientation|screenSize"
    android:windowSoftInputMode="stateHidden|adjustPan"

【讨论】:

以上是关于如何停止在对话框中打开的键盘上调整大小/向上推的活动?的主要内容,如果未能解决你的问题,请参考以下文章

键盘将内容向上推/调整屏幕大小

打开软键盘时在顶部隐藏半个对话框

出现键盘后调整活动大小

当焦点在 TextField 上并且在 Flutter 中打开键盘时,如何向上推送内容?

iphone:如何调整视图及其所有子项的大小(在键盘弹出的情况下)?

iOS9中怎样设置字体大小