Site icon Flutter Packages | Pub dev Packages – Flutter Mobile App World

A flutter package for showing a country code selector

country_code_picker

A flutter package for showing a country code selector.

It supports i18n.

Usage

Just put the component in your application setting the onChanged callback.

@override
 Widget build(BuildContext context) => new Scaffold(
     body: Center(
       child: CountryCodePicker(
         onChanged: print,
         // Initial selection and favorite can be one of code ('IT') OR dial_code('+39')
         initialSelection: 'IT',
         favorite: ['+39','FR'],
         // optional. Shows only country name and flag
         showCountryOnly: false,
         // optional. Shows only country name and flag when popup is closed.
         showOnlyCountryWhenClosed: false,
         // optional. aligns the flag and the Text left
         alignLeft: false,
       ),
     ),
 );

Example:

void _onCountryChange(CountryCode countryCode) {
    //TODO : manipulate the selected country code here
    print("New Country selected: " + countryCode.toString());
  }

i18n

Just add the CountryLocalizations.delegate in the list of your app delegates

 return new MaterialApp(
      supportedLocales: [
        Locale('en'),
        Locale('it'),
        Locale('fr'),
        Locale('es'),
      ],
      localizationsDelegates: [
        CountryLocalizations.delegate,
        GlobalMaterialLocalizations.delegate,
        GlobalWidgetsLocalizations.delegate,
      ],

Customization

Here is a list of properties available to customize your widget:

NameTypeDescription
onChangedValueChangedcallback invoked when the selection changes
onInitValueChangedcallback invoked during initialization of the widget
initialSelectionStringused to set the initial selected value
favoriteListused to populate the favorite country list
textStyleTextStyleTextStyle applied to the widget button
paddingEdgeInsetsGeometrythe padding applied to the button
showCountryOnlybooltrue if you want to see only the countries in the selection dialog
searchDecorationInputDecorationdecoration applied to the TextField search widget
searchStyleTextStylestyle applied to the TextField search widget text
emptySearchBuilderWidgetBuilderuse this to customize the widget used when the search returns 0 elements
builderFunction(CountryCode)use this to build a custom widget instead of the default FlatButton
enabledboolset to false to disable the widget
textOverflowTextOverflowthe button text overflow behaviour
dialogSizeSizethe size of the selection dialog
countryFilterListuses a list of strings to filter a sublist of countries
showOnlyCountryWhenClosedboolif true it’ll show only the country
alignLeftboolaligns the flag and the Text to the left
showFlagboolshows the flag everywhere
showFlagMainboolshows the flag only when closed
showFlagDialogboolshows the flag only in dialog
flagWidthdoublethe width of the flags
comparatorComparatoruse this to sort the countries in the selection dialog
hideSearchboolif true the search feature will be disabled

Contributions

Contributions of any kind are more than welcome! Feel free to fork and improve country_code_picker in any way you want, make a pull request, or open an issue.

Download country code selector source code on GitHub

https://github.com/imtoori/CountryCodePicker

Exit mobile version