country_currency_pickers 1.0.1
country_currency_pickers #
Countries, codes, flags, currency and several way of picking them at your service...one widget away...
CountryPickerDropdown example #
CountryPickerDropdown(
initialValue: 'tr',
itemBuilder: _buildDropdownItem,
onValuePicked: (Country country) {
print("${country.name}");
},
),
Widget _buildDropdownItem(Country country) => Container(
child: Row(
children: <Widget>[
CountryPickerUtils.getDefaultFlagImage(country),
SizedBox(
width: 8.0,
),
Text("+${country.phoneCode}(${country.isoCode})"),
],
),
);
CurrencyPickerDropdown example #
CurrencyPickerDropdown(
initialValue: 'INR',
itemBuilder: _buildCurrencyDropdownItem,
onValuePicked: (Country country) {
print("${country.name}");
},
),
Widget _buildCurrencyDropdownItem(Country country) => Container(
child: Row(
children: <Widget>[
CountryPickerUtils.getDefaultFlagImage(country),
SizedBox(
width: 8.0,
),
Text("${country.currencyCode}"),
],
),
);
CountryPickerDialog example #
void _openCountryPickerDialog() => showDialog(
context: context,
builder: (context) => Theme(
data: Theme.of(context).copyWith(primaryColor: Colors.pink),
child: CountryPickerDialog(
titlePadding: EdgeInsets.all(8.0),
searchCursorColor: Colors.pinkAccent,
searchInputDecoration: InputDecoration(hintText: 'Search...'),
isSearchable: true,
title: Text('Select your phone code'),
onValuePicked: (Country country) =>
setState(() => _selectedDialogCountry = country),
itemBuilder: _buildDialogItem)),
);
CurrencyPickerDialog example #
void _openCurrencyPickerDialog() => showDialog(
context: context,
builder: (context) => Theme(
data: Theme.of(context).copyWith(primaryColor: Colors.pink),
child: CurrencyPickerDialog(
titlePadding: EdgeInsets.all(8.0),
searchCursorColor: Colors.pinkAccent,
searchInputDecoration: InputDecoration(hintText: 'Search...'),
isSearchable: true,
title: Text('Select your Currency'),
onValuePicked: (Country country) =>
setState(() => _selectedDialogCountry = country),
itemBuilder: _buildCurrencyDialogItem)),
);
CountryPickerCupertino example #
void _openCupertinoCountryPicker() => showCupertinoModalPopup<void>(
context: context,
builder: (BuildContext context) {
return CountryPickerCupertino(
pickerSheetHeight: 300.0,
onValuePicked: (Country country) =>
setState(() => _selectedCupertinoCountry = country),
);
});
CurrencyPickerCupertino example #
void _openCupertinoCurrencyPicker() => showCupertinoModalPopup<void>(
context: context,
builder: (BuildContext context) {
return CurrencyPickerCupertino(
pickerSheetHeight: 300.0,
onValuePicked: (Country country) =>
setState(() => _selectedCupertinoCountry = country),
);
});
Credits #
Forked from country_pickers repo. Thanks goes to country-flags repo for the flag image assets.
[1.1.0] - 04/26/2019
-
Fix issue #12 - Fix background color setting for CountryPickerCupertino. Thanks @rhmoeller
-
Fix filtering issue for CountryPickerCupertino.
-
Fix Update for iPhone X UI issues with safe-area. PR #13 Thanks @dhavalagile
[1.0.4] - 04/14/2019
- Fix issue #7 - Add iso3Code. Thanks @endigo
[1.0.3] - 04/12/2019
- Fix issue #9 - Ability to filter countries. Thanks @ened
[1.0.2] - 03/27/2019
[1.0.1] - 10/09/2018
- CountryPickerDropdown's onValuePicked doesn't feel useless anymore. [Thanks Solomon Nsumei @solnsumei]
[1.0.0] - 9/22/2018
- Initial release 🎉
- CountryPickerDropdown
- CountryPickerDialog
- CountryPickerCupertino
- Country flag image assets and list of maps which has country name, iso code, phone code.
country_pickers example #
Example project that shows usage of country_pickers library.
CountryPickerDropdown example #
CountryPickerDropdown(
initialValue: 'tr',
itemBuilder: _buildDropdownItem,
onValuePicked: (Country country) {
print("${country.name}");
},
),
Widget _buildDropdownItem(Country country) => Container(
child: Row(
children: <Widget>[
CountryPickerUtils.getDefaultFlagImage(country),
SizedBox(
width: 8.0,
),
Text("+${country.phoneCode}(${country.isoCode})"),
],
),
);
CountryPickerDialog example #
void _openCountryPickerDialog() => showDialog(
context: context,
builder: (context) => Theme(
data: Theme.of(context).copyWith(primaryColor: Colors.pink),
child: CountryPickerDialog(
titlePadding: EdgeInsets.all(8.0),
searchCursorColor: Colors.pinkAccent,
searchInputDecoration: InputDecoration(hintText: 'Search...'),
isSearchable: true,
title: Text('Select your phone code'),
onValuePicked: (Country country) =>
setState(() => _selectedDialogCountry = country),
itemBuilder: _buildDialogItem)),
);
CountryPickerCupertino example #
void _openCupertinoCountryPicker() => showCupertinoModalPopup<void>(
context: context,
builder: (BuildContext context) {
return CountryPickerCupertino(
pickerSheetHeight: 300.0,
onValuePicked: (Country country) =>
setState(() => _selectedCupertinoCountry = country),
);
});
Use this package as a library
1. Depend on it
Add this to your package's pubspec.yaml file:
dependencies:
country_currency_pickers: ^1.0.1
2. Install it
You can install packages from the command line:
with Flutter:
$ flutter pub get
Alternatively, your editor might support flutter pub get
.
Check the docs for your editor to learn more.
3. Import it
Now in your Dart code, you can use:
import 'package:country_currency_pickers/countries.dart';
import 'package:country_currency_pickers/country.dart';
import 'package:country_currency_pickers/country_pickers.dart';
import 'package:country_currency_pickers/country_picker_cupertino.dart';
import 'package:country_currency_pickers/country_picker_dialog.dart';
import 'package:country_currency_pickers/country_picker_dropdown.dart';
import 'package:country_currency_pickers/currency_picker_cupertino.dart';
import 'package:country_currency_pickers/currency_picker_dialog.dart';
import 'package:country_currency_pickers/currency_picker_dropdown.dart';
import 'package:country_currency_pickers/utils/my_alert_dialog.dart';
import 'package:country_currency_pickers/utils/typedefs.dart';
import 'package:country_currency_pickers/utils/utils.dart';
Popularity:
Describes how popular the package is relative to other packages.
[more]
|
30
|
Health:
Code health derived from static analysis.
[more]
|
100
|
Maintenance:
Reflects how tidy and up-to-date the package is.
[more]
|
100
|
Overall:
Weighted score of the above.
[more]
|
65
|
We analyzed this package on Dec 4, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:
- Dart: 2.6.1
- pana: 0.12.21
- Flutter: 1.9.1+hotfix.6
Platforms
Detected platforms: Flutter
References Flutter, and has no conflicting libraries.
Dependencies
Package | Constraint | Resolved | Available |
---|---|---|---|
Direct dependencies | |||
Dart SDK | >=2.1.0 <3.0.0 | ||
flutter | 0.0.0 | ||
Transitive dependencies | |||
collection | 1.14.11 | 1.14.12 | |
meta | 1.1.7 | 1.1.8 | |
sky_engine | 0.0.99 | ||
typed_data | 1.1.6 | ||
vector_math | 2.0.8 | ||
Dev dependencies | |||
flutter_test |