【问题标题】:Soft keyboard changes from numerical to alphanumerical automatically on number type EditText数字类型 EditText 上的软键盘自动从数字变为字母数字
【发布时间】:2014-04-22 18:42:40
【问题描述】:

我有一个带有 input_type“数字”的 EditText。 它存在于一个布局中,该布局是 ListView 中的一个项目。

问题如下: 当我触摸 EditText 时,我很快就得到了软数字键盘,但不到一秒钟它就会自动变为显示所有字母的常规软键盘。显然,我想要数字键盘。

为了让问题更加奇怪,如果我将 ListView 的 layout_height 从 match_parent 更改为 wrap_content,则不会出现问题。但不幸的是,我需要保持 ListView 的高度为 match_parent。

有人有什么想法吗? 谢谢!

【问题讨论】:

  • Chacon 我遇到了同样的问题,甚至尝试更改列表视图的布局高度。我在清单文件中添加了 android:descendantFocusability="afterDescendants" 和 adjustPan。您还有其他想法吗?
  • 同样的问题发生在我身上,但在我的情况下,它只发生在 7.0 ( naught ) 及更高的 API 级别
  • 你能告诉我你正在测试哪个版本的android

标签: android listview keyboard


【解决方案1】:

我可能是错的,但您可能想考虑通过将任何编辑文本字段放置在滚动视图中来更改您的设计。您的列表适配器的 getView 方法会以您无法控制的不可预测的时间间隔多次调用。这将导致您在 xml 中的任何初始化代码或代码被一遍又一遍地重新初始化,并产生一些有趣的结果。如果列表项中有多个元素,这可能是导致键盘在调整高度时“工作”的原因。

【讨论】:

    猜你喜欢
    • 2020-07-06
    • 2014-04-29
    • 2016-03-02
    • 2016-10-05
    • 2015-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-14
    相关资源
    最近更新 更多