微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Edittext - 带有日期格式的掩码

如何解决Edittext - 带有日期格式的掩码

enter image description here

我使用 redMadRobot/input-mask 库来屏蔽编辑文本。但我需要 DD / MM / YYYY 之间的空间,如示例图像中所示,并且 / 符号必须始终可见。但正如我所见,我不能用这个库来做到这一点。

代码

const val DATE_MASK = "[00]{/}[00]{/}[9900]"

MaskedTextChangedListener.Companion.installOn(
            editText,DATE_MASK,object : MaskedTextChangedListener.ValueListener {
                override fun onTextChanged(
                    maskFilled: Boolean,extractedValue: String,formattedValue: String
                ) {
                    //transactions
                }
            }
        )

是否有任何原生的 edittext 属性来制作这个设计或者你能推荐另一个库吗?

解决方法

图书馆作者在这里。
input-mask-android 是关于文本格式的,但您的问题看起来更与布局相关。

三个 EditText 组件加上它们之间的两个 / 标签可能会起作用。 setOnEditorActionListenerTextWatcher 侦听器将有助于光标移动。

或者你可以只在大括号内放几个空格,然后收工:[00]{ / }[00]{ / }[9900]

我还建议阅读有关我们的 affine masks 的更多信息,然后为了年份的正确性而使用一些模式:

  • [00]{ / }[00]{ / }[00]
  • [00]{ / }[00]{ / }[0000]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。