我有一个带有文本字段的 Android 应用程序。当我开始打字时,键盘会将背景图像向上推。
我希望图像保持在原位,而键盘将其覆盖。
将布局更改为 BoxLayout 或 BorderLayout 不会对背景图像的位置产生任何影响,更改可滚动也不会:
container.setScrollableY(false);
form.setScrollableY(false);
我如何才能将图像保持在适当的位置?
我无法弄清楚的另一件事是在光标已位于文本字段且键盘可见的情况下访问表单,设置:
textField.requestFocus();
但这也没有达到预期的效果。
如有任何帮助,我们将不胜感激。
最佳答案
除了 Shai 的回答之外,您还可以尝试将 TextField 父容器放置在 BorderLayout 容器的北部,并将图像容器放置在中心。这可以以某种方式强制键盘在中心图像上滑动。
要在显示表单时回答 TextField 编辑部分,请将以下内容添加到 TextField 表单
form.setEditOnShow(textField);
如果 TextField 中已有一些文本,您可能需要进行以下设置以将光标置于末尾:
CN.callSerially(() -> {
textField.setCursorPosition(textField.getText().length());
form.repaint(); // optional form repainting
});
关于android - 代号一个键盘封面图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56742570/