我正在构建一个Android应用,我希望用户能够插入一笔钱。为此,我想要两个盒子,一个用于整个欧元,一个用于小数。为此,我当然可以使用两个textViews并将内容转换为BigDecimal(我们用于货币面额的类型)。但这有两个缺点;
在定义xml时,我找不到任何特定的“numberView”或类似的东西。看到这不仅仅发生在我们的应用程序中,我想有更好的方法来做到这一点。我四处寻找,但我无法找到我正在寻找的东西(尽管我可能会搜索错误的单词)。
所以我的问题;有人知道我应该如何处理在Android应用程序中插入金额?
答案 0 :(得分:1)
第一个问题:ardroid:inputType="numberDecimal"
对于第二个问题:在点视图(文本框或其他任何内容)中添加一个单击侦听器,以便专注于第二个EditText。
编辑:如果用户有非标准键盘,则可能不接受numberDecimal输入类型。设置集android:digits="0,1,2,3,4,5,6,7,8,9"
答案 1 :(得分:1)
步骤:
1)使用android:inputType =“numberDecimal”
2)然后在java类中实现TextWatcher。
3)在onCreate()方法中设置监听器
EditText e1 =(EditText)findViewById(R.id.et1); e1.addTextChangedListener(本);
4)
@Override
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
if (arg0.toString().contains(".")) {
// e2.requestFocus(); // Set focus to second editText
}
}