Para formatar e limitar uma entrada em um EditText, como datas e números de telefone, basta usar a classe MaskTextWatcher e SimpleMaskFormatter. Mas, antes de usá-las, é necessário adicionar a biblioteca colando o código a seguir em seu build.gradle (Module: app):
compile 'com.github.rtoshiro.mflibrary:mflibrary:1.0.0'
Exemplo de uso:
private EditText telefone;
telefone = (EditText) findViewById(R.id.edit_telefone);
// Crie uma máscara de formatação de string, 'N' para representar apenas números
SimpleMaskFormatter simpleMaskTelefone = new SimpleMaskFormatter("(NN) NNNN-NNNN");
MaskTextWatcher maskTelefone = new MaskTextWatcher(telefone, simpleMaskTelefone);
telefone.addTextChangedListener(maskTelefone);
Dessa maneira o telefone será formato como, por exemplo: (88) 9956-1517
A classe SimpleMaskFormatter vem com 5 padrões pré-definidos:
N - para números.
L - para letras.
L - para números e letras.
l - para letras minúsculas.
U - para letras maiúsculas.
Também é possível customizar os nossos próprios formatos. Veja o exemplo abaixo:
// permite apenas os números 0, 1, 2 e 3.
MaskPattern mp03 = new MaskPattern("[0-3]");
// permite os números de 0 a 9.
MaskPattern mp09 = new MaskPattern("[0-9]");
// permite apenas os números 0 e 1.
MaskPattern mp01 = new MaskPattern("[0-1]");
// Cria-se então uma nova máscara
MaskFormatter mf = new MaskFormatter("[0-1][0-9]/[0-3][0-9]/[0-9][0-9][0-9][0-9]");
// Registra-se os padrões no objeto MaskFormatter
mf.registerPattern(mp01);
mf.registerPattern(mp03);
mf.registerPattern(mp09);
Para maiores informações, basta acessar o link dessa biblioteca no GitHub:
https://github.com/rtoshiro/MaskFormatter
Espero ter ajudado! =)
Marcadores
actionbar
(3)
adapter
(1)
android
(17)
android studio
(4)
atalhos
(1)
collections framework
(1)
ContextMenu
(1)
custom application
(1)
DAO
(1)
eclipse
(1)
erro
(1)
fatorial
(1)
fibonacci
(1)
fragments
(1)
git
(3)
GitHub
(2)
ícones
(2)
intent-filter
(1)
java
(4)
jsf
(1)
listview
(1)
máscara
(1)
MaskFormatter
(1)
material design
(2)
menu suspenso
(1)
permissões
(1)
plugin
(1)
RadioButton
(1)
recursividade
(1)
singleton
(1)
SQLite
(1)
SQLiteOpenHelper
(1)
startActivityForResult
(1)
toolbar
(1)
xml
(3)
segunda-feira, 6 de fevereiro de 2017
MaskFormatter: biblioteca Android para formatar Strings usando Máscaras
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário