windowSoftInputMode:当键盘提示文本时,adjustResize 不适用于数字键盘

Posted

技术标签:

【中文标题】windowSoftInputMode:当键盘提示文本时,adjustResize 不适用于数字键盘【英文标题】:windowSoftInputMode: adjustResize doesn't work properly for numeric keyboard, when keyboard suggests text 【发布时间】:2021-06-20 00:27:59 【问题描述】:

当文本被复制到剪贴板并显示建议时,键盘顶部隐藏了后面的一小部分视图,我认为这是“Gboard”的问题,因为如果 EditText inputType 是“文本”一切正常,但是当它是“数字”类型,它会导致问题。

这是我使用的风格:

<style name="BottomSheetDialogStyle">
    <item name="android:windowIsFloating">false</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
    <item name="android:windowSoftInputMode">adjustResize</item>
</style>

【问题讨论】:

这感觉像是操作系统的问题——操作系统负责解释adjustResize,操作系统应该知道键盘有多高。我在问题跟踪器上没有看到问题。我找到的最接近的一个是issuetracker.google.com/issues/64142841,它已有 3.5 年历史,用于支持库的一个古老版本。您可以尝试创建一个演示该问题的示例项目,然后提交一份错误报告,附上该项目以及可能显示该行为的截屏视频。 您是否尝试过使用普通键盘或其他第三方? 我可以查看布局 xml 吗?我想试一试。 @SabetChowdhury github.com/nikachapo/Incorrect-Keyboard-Functionality-Sample 【参考方案1】:

您的问题是您使用的是底部工作表并且它没有完全展开,我想如果您尝试滚动它,您可以完全看到按钮。

过去我们有一个糟糕的 UI 设计,我们最终找到了一个肮脏的解决方案,即从底部表单中移除按钮并将其添加到底部表单根上方 3 层的框架布局中

还有一些像这样的库可以完成这项工作https://github.com/xyzcod2/StickyBottomSheet

【讨论】:

以上是关于windowSoftInputMode:当键盘提示文本时,adjustResize 不适用于数字键盘的主要内容,如果未能解决你的问题,请参考以下文章

android 动态改变界面 软键盘覆盖了界面

当键盘出现时,ActionBar退出屏幕

Android windowSoftInputMode属性详解

Android中的windowSoftInputMode属性详解

android:windowSoftInputMode属性详解

105android:windowSoftInputMode属性详解