我已经实现了一个记笔记用户界面,其中WebView
接受用户输入,而在它下面是一行按钮,用于切换WebView
内的格式。按钮位于布局的底部,因此当WebView
具有焦点时弹出软键盘时,按钮位于键盘上方。
这很有效,但我的问题是每当按下其中一个按钮时,软键盘就会关闭。 每当按下一个按钮时,我都想保留软键盘。所以如果它关闭,按下按钮就不会打开它,如果它打开则按下按钮就赢了关闭它。
我找到了Wordpress Android源代码,布局非常相似,它具有我想要的精确按钮 - 键盘交互。
GitHub上的相关来源位于Activity Code,此处Layout XML
我无法弄清楚他们是怎么做到的。他们没有调用InputMethodManager
,我试图尽可能避免这种情况,因为它会导致跳跃行为,只要按下按钮,键盘就必须重新打开。我找到的similar question答案基本上就是这样做的,或创建一个无用的视图来获得焦点以防止键盘关闭。看起来效率都不高。