【问题标题】:Android keyboard for bank account entry [0-9-xX]用于输入银行账户的 Android 键盘 [0-9-xX]
【发布时间】:2016-04-20 04:08:22
【问题描述】:

我需要一个 editText 输入类型,它允许我在用户输入银行账户或银行分行时增加用户体验。数字应遵循这些规则:

帐户:\d{1,5}-\d{1,2}|X --> 1 到 5 位数字、破折号、1 位或 2 位数字或 1 个 X 字符

分支:\d{1,5}(-\d{1,2}|-X)? --> 1 到 5 位数字、破折号、0、1 位或 2 位数字或 1 个 X 字符

由于我的输入可能有更多数字,我希望键盘主要提供数字,如果用户有 X 数字,他/她可以交换输入类型。基本上我想要一个首先显示符号布局的键盘。

更新:

我尝试在编辑文本 xml 中更改输入类型:

<EditText
    style="@style/Subhead.Form"
    android:inputType="text"
    android:maxLength="7"
    app:hint="@{@string/profile_hint_bankBranch}"
    app:bindTo="@{viewModel.branch.input}"
    tools:text="1234-5"/>

但这首先呈现了文本布局,正如预期的那样,我也尝试了其他几个选项,但我认为没有一个能满足我的要求。

在 iOS 中,我使用的是“数字和标点符号”键盘类型,这正是我想要的,是否有任何简单的解决方案可以实现相同的行为?

【问题讨论】:

  • 请展示您尝试实现此功能的代码,并具体说明您遇到的问题。
  • 我用我的 xml 文件进行了更新,我尝试了这个人的解决方案 stackoverflow.com/a/29175373/1080583 但我不想要这么花哨的东西,只需将符号键盘作为默认值就可以了

标签: android android-edittext android-inputtype


【解决方案1】:

您可以在编辑文本中使用“电话”输入类型。这会将键盘减少为数字和破折号。 http://developer.android.com/training/keyboard-input/style.html

对于更多花哨的东西(正则表达式检查、自动完成、更改键盘样式),您将不得不求助于自定义文本更改侦听器之类的东西。 http://developer.android.com/reference/android/widget/TextView.html#addTextChangedListener(android.text.TextWatcher)

【讨论】:

  • 只有数字和破折号是不够的,我还需要 X 字符,电话输入类型在数字键上有字母但我没有设法将它们作为类型选项访问
猜你喜欢
  • 2017-10-10
  • 2014-08-27
  • 1970-01-01
  • 1970-01-01
  • 2015-09-08
  • 1970-01-01
  • 2019-07-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多