This plugin provides a TextEditingController that formats international phone numbers as you type them.
![demo](https://private-user-images.githubusercontent.com/80799804/275183446-686f8c5e-448a-44b6-9bc2-0a3538ab7588.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjIyNzQxNTAsIm5iZiI6MTcyMjI3Mzg1MCwicGF0aCI6Ii84MDc5OTgwNC8yNzUxODM0NDYtNjg2ZjhjNWUtNDQ4YS00NGI2LTliYzItMGEzNTM4YWI3NTg4LmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MjklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzI5VDE3MjQxMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTc0MWEwMzllZWQ2NGU4NThmMjk2ZWFiNWRiMGQ4ODg2OTAzYzUzNmM4YmEwMTQ0ZmE2OTU2YzZlYjc0Nzk5ZjAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.hpgEhBnaPRzCbvraUzJGy6SkCNcaVKQealrCYU2QFUI)
Two steps:
- In a stateful widget, define a
PhoneNumberController
:
final _controller = PhoneNumberController(countryCode: 'us');
- When building the text field, specify the controller:
TextFormField(
controller: _controller,
keyboardType: TextInputType.phone,
...
);