【问题标题】:Keyboard issue while focusing on bottom edit text in Android在Android中专注于底部编辑文本时出现键盘问题
【发布时间】:2012-04-10 07:35:59
【问题描述】:

我正在开发一个我愿意从用户那里获得输入的 android 应用程序。我为它创建了一个布局,它有一个滚动视图作为根视图和相对布局,因为它是子视图,所有其他布局都在这个相对布局内。但是,当编辑文本位于屏幕底部并且用户单击它以带上键盘时,它会在编辑文本和键盘之间显示一些空白框,然后如果用户输入任何单词,它就不会显示在编辑文本中。但是,如果编辑文本几乎超过屏幕大小的一半,它就可以正常工作。您可以通过查看下面的图像更清楚地了解

Here is my code

有人遇到过这种问题吗??请帮忙!!!

【问题讨论】:

  • 这个空白框在哪里?你能概括一下吗?
  • @a.ch. -- 在第二张图片中编辑文本正下方的空白处
  • 是黑色区域吧?然后你应该提供你的布局的 xml 文件。
  • 你在实际设备上试过了吗?
  • 您的源代码可能是我见过的最大的布局文件。没有人知道里面有什么可能导致这种情况。我会投资清理它,因为我不知道谁会愿意筛选所有这些。

标签: android android-layout android-view android-keypad


【解决方案1】:

在清单中的 Activity 上设置的默认 IME 模式 (android:windowSoftInputMode="adjustPan") 将平移主布局,因此文本字段位于可视区域的中间。虽然您的大部分内容都在可滚动区域中,但它只是移动整个区域而不是将内容滚动到视图中。如果您使用 android:windowSoftInputMode="adjustNothing",它将阻止布局平移,但实际上也不会执行任何操作,只会覆盖您的原始输入。

我的建议是使用adjustResize,这可能会为您解决问题。如果没有,您必须考虑进行一些自定义滚动区域聚焦。

【讨论】:

  • 关于信息:尽管文档说了什么,最新的 SDK 和工具不接受“adjustNothing”(-> 不允许字符串类型)。我想“adjustResize|adjustPan”虽然会有同样的效果。我猜一定是一个错误。
  • 真的。是的,adjustResize 应该可以解决问题。只要输入框不动
猜你喜欢
  • 2021-12-06
  • 2014-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-31
  • 2022-01-16
  • 1970-01-01
相关资源
最近更新 更多