如何捕捉“虚拟键盘显示/隐藏” Android中的活动?
我想根据是否显示虚拟键盘来改变布局。我搜索过API和各种博客,但似乎找不到任何有用的东西。
可能吗?
谢谢!
没有找到相关结果
已邀请:
15 个回复
樊熄忙暖
然后只需更改某些视图的可见性,更新字段以及更改布局文件。 注意 此解决方案不适用于软键盘,软键盘不会调用
。
秃拳割
注意: 如果用户使用浮动键盘,此方法将导致问题。
哭木算
现在在您的Activity声明布局的子类(main.xml)
您可以从代码中看到我们为子类构造函数中的Activity扩展布局
现在只需为我们的Activity设置子类布局的内容视图。
河饶办斜施
这很好用...... Mark,当您的Activity的Soft Input Mode设置为“WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE”时,此解决方案将正常工作
泉秘胁
界面。
HomeActivity.java:
希望这会对你有所帮助。
耐扫鹤胶鞭
高度阈值100是猜测的IME的最小高度。 这适用于adjustPan和adjustResize。
呈辖玫割善
告耸
襄挟款籍
薄响
上设置
来检测它何时即将显示或隐藏。
注意:有一点需要注意的是,当
获得或失去焦点时,会立即触发此回调。这实际上会在软键盘显示或隐藏之前触发。键盘显示或隐藏后我发现做某事的最好方法是使用
并延迟约400ms,如下所示:
嗓瑰
细瑞
摊揉售
厦惫
这里的activityRootView是Activity的根视图。
埠仙俊
,
和
。当键盘显示和隐藏时,我需要将
滚动到底部。为了实现这一点,我覆盖了
方法,它对我来说很好。