I'm creating a function for when the user types in a EditText
, it returns me with a chew in the field,
Example:
- Type 1 returns "$ 0.01"
- Type 11 returns "$ 0.11" and and so on
I tried this way
public static String addMask(final String textoAFormatar) { String formatado = ""; int i = 0; if (textoAFormatar.length() == 1) { String mask = "R$ #.##"; DecimalFormat format = new DecimalFormat("0.00"); String texto = format.format(textoAFormatar); // vamos iterar a mascara, para descobrir quais caracteres vamos adicionar e quando... for (char m : mask.toCharArray()) { if (m != '#') { // se não for um #, vamos colocar o caracter informado na máscara formatado += m; continue; } // Senão colocamos o valor que será formatado try { formatado += texto.charAt(i); } catch (Exception e) { break; } i++; } } return formatado; }