java-EditText输入金额

我正在开发销售点应用程序.

所以我想让用户输入购买金额

>假设用户输入了100000,但我希望它自动显示100,000. 1000000变成1,000,000
>第二个问题是,我不希望用户能够输入.他们自己.
>第三个问题是,因为这是金钱,所以我们不能让用户一开始输入0.

有任何想法吗?

到目前为止,我只能想出inputType = numberDecimal,它实际上并没有帮助.

非常感谢你

附注:我不需要任何小数位

解决方法:

对于您的第一个问题,请点击此链接
Thousand separator

对于第二个问题
将此添加到您的editext

android:digits="0123456789"
android:inputType="numberDecimal"

对于第三个问题,您必须像这样使用TextWatcher

editText1.addTextChangedListener(new TextWatcher(){
    public void onTextChanged(CharSequence s, int start, int before, int count)
    {
        if (editText1.getText().toString().matches("^0") )
        {
            // Not allowed
            Toast.makeText(context, "not allowed", Toast.LENGTH_LONG).show();
            editText1.setText("");
        }
    }
    @Override
    public void afterTextChanged(Editable arg0) { }
    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
}); 
上一篇:java-检查字符串是否太大而无法容纳在TextView中


下一篇:android-studio-3.1.4 textAlignment丢失(Android Studio)