country_calling_code_picker_plus 1.0.1
country_calling_code_picker_plus: ^1.0.1 copied to clipboard
Flexible Country picker for getting Country code and Calling code (improved version of country-calling-code-picker).
Country Calling Code Picker Plus #
This project draws inspiration from the country-calling-code-picker package written in dart. The original package can be found here. We extend our heartfelt gratitude to the original author for their remarkable work.
Searchable country picker widget ready to use in a dialog, bottom sheet and even in full screen!
1: Import the plugin using
import 'package:country_calling_code_picker_plus/country_calling_code_picker_plus.dart';
2: Initialize your UI using default country.
void initCountry() async {
final country = await getDefaultCountry(context);
setState(() {
_selectedCountry = country;
});
}
3: Use utility function showCountryPickerSheet to show a bottom sheet picker.
void _showCountryPicker() async{
final country = await showCountryPickerSheet(context,);
if (country != null) {
setState(() {
_selectedCountry = country;
});
}
}

4: Use utility function showCountryPickerDialog to show a dialog.
void _showCountryPicker() async{
final country = await showCountryPickerDialog(context,);
if (country != null) {
setState(() {
_selectedCountry = country;
});
}
}

5: CountryPickerWidget can be used for showing in a full screen.
class PickerPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Select Country'),
),
body: Container(
child: CountryPickerWidget(
onSelected: (country) => Navigator.pop(context, country),
),
),
);
}
}

- If you just need the list of countries for making your own custom country picker, you can all getCountries() which returns list of countries.
List<Country> list = await getCountries(context);
- If you want to get flag from the country code, you can use below method to get country using the country code. Eg. for getting India's flag,
Country country = await getCountryByCountryCode(context, 'IN');