如何更新EditText以将输入转换为货币? (Android新手)

时间:2014-06-24 13:22:35

标签: java android eclipse android-edittext currency

我有一些EditText,其中inputType =" numberDecimal"我想将输入更改为货币(TextWatcher可能?)。有人能帮忙吗? 99%的项目完成了吧。谢谢你们。

1 个答案:

答案 0 :(得分:0)

尝试以下代码: -

    tv.addTextChangedListener(new TextWatcher()
    {
        private String current = "";
        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count)
        {
            if(!s.toString().equals(current))
            {
                if(tv.getText().toString().trim().length()>0)
                {
                    tv.removeTextChangedListener(this);
                    String formated = tv.getText().toString().trim().replace("$", "");
                    current = formated;
                    tv.setText("$"+formated);
                    tv.setSelection(formated.length()+1);   

                    tv.addTextChangedListener(this);
                }
            }
        }

         @Override
         public void beforeTextChanged(CharSequence s, int start, int count, int after)
         {
         }
         @Override
         public void afterTextChanged(final Editable s)
         { 
         }
    });