countries_world_map

Creator: coderz1093

Last updated:

Add to Cart

Description:

countries world map

countries_world_map #
This package provides an easy to implement World Map (or any other country of choice) which is fully customizable. In this case "customizable" means the ability to change the color of a country/state/prefecture/province. Additionally when a country is touched the map provides a callback.

Online example is available at examples.simplewidgets.dev/#/countries_world_map
Support #
To see which countries are supported, please see the online example or the list below.
About this package #
This flutter package draws a map of choice using the CustomPainter. These maps can be quite big so please read "Perfomance" below. When tapping a area on the map (country, state etc.) you will get a callback providing you with the name, id and tapdetails of the area being tapped.
How to use the widget #
The main widget is the SimpleMap() widget which requires at least the instructions on how to draw the map. For all supported countries there are 2 classes SMap...() & SMap...Colors(). The first class only contains a static String which has the instructions for the SimpleMap widget. The second class has color properties that match with the ID's given to the area's in the instructions.
For example:

Spain has the following classes: SMapSpain() & SMapSpainColors().
Mexico has the following classes: SmapMexico() & SMapMexicoColors().
The World Map has the following classes: SMapWorld() & SMapWorldColors().

SimpleMap(
// String of instructions to draw the map.
instructions: SMapWorld.instructions,


// Default color for all countries.
defaultColor: Colors.grey,


// Matching class to specify custom colors for each area.
colors: SMapWorldColors(
uS: Colors.green, // This makes USA green
cN: Colors.green, // This makes China green
ru: Colors.green, // This makes Russia green
).toMap(),


// Details of what area is being touched, giving you the ID, name and tapdetails
callback: (id, name, tapdetails) {
print(id);
},
);

copied to clipboard
❗️ Please note:
ID structure might be different between countries. The Color class and the instructions should always match, but there might be differences between different countries. When adding a map check how the ID is returned. Or open the online example to see the ID's in the right list.
Use cases #
This packages can be used to visualize data by adding different shades of colors. When pressing a region you might want to show a bottomsheet containing more details.
Although it it possible to add multiple maps to your app, please read more about the performance before proceeding.
Tips for UI #


Wrap the WorldMap in an InteractiveViewer widget.
Using InteractiveView enables you to zoom in and out on specific countries as done in the online example. In the example the InteractiveViewer has a maxScale of 75.


Set the WorldMap to 92% of the available width to make it look more centered.


Performance #
Some of the maps are really big, so (re)building the widget can be expensive. That's why the default Widget uses a RepaintBoundry to prevent it from unnecessary repaints. If you change a Country Color and call SetState() the widget will repaint.
In version 0.0.7 and before the size of the map would cause jank and compile errors. In the newer versions this should be fixed. However, if you plan on showing a lot of maps in your app. Please be advised and consider using Google Maps or Apple Maps instead, this because each map added to the app will increase the size of the final build.
Like to contribute? #
Feel free to help us improve this package by creating issues, pull request etc. For any questions you can email hello@simplewidgets.dev
Countries with Maps #



COUNTRY
ISO
SUPPORTED




Afghanistan
AF



Albania
AL



Algeria
DZ



American Samoa
AS



Andorra
AD



Angola
AO



Anguilla
AI



Antarctica
AQ



Antigua and Barbuda
AG



Argentina
AR



Armenia
AM



Aruba
AW



Australia
AU



Austria
AT



Azerbaijan
AZ



Bahamas (the)
BS



Bahrain
BH



Bangladesh
BD



Barbados
BB



Belarus
BY



Belgium
BE



Belize
BZ



Benin
BJ



Bermuda
BM



Bhutan
BT



Bolivia (Plurinational State of)
BO



Bonaire, Sint Eustatius and Saba
BQ



Bosnia and Herzegovina
BA



Botswana
BW



Bouvet Island
BV



Brazil
BR



British Indian Ocean Territory (the)
IO



Brunei Darussalam
BN



Bulgaria
BG



Burkina Faso
BF



Burundi
BI



Cabo Verde
CV



Cambodia
KH



Cameroon
CM



Canada
CA



Cayman Islands (the)
KY



Central African Republic (the)
CF



Chad
TD



Chile
CL



China
CN



Christmas Island
CX



Cocos (Keeling) Islands (the)
CC



Colombia
CO



Comoros (the)
KM



Congo (the Democratic Republic of the)
CD



Congo (the)
CG



Cook Islands (the)
CK



Costa Rica
CR



Croatia
HR



Cuba
CU



Curaçao
CW



Cyprus
CY



Czechia
CZ



Côte d'Ivoire
CI



Denmark
DK



Djibouti
DJ



Dominica
DM



Dominican Republic (the)
DO



Ecuador
EC



Egypt
EG



El Salvador
SV



Equatorial Guinea
GQ



Eritrea
ER



Estonia
EE



Eswatini
SZ



Ethiopia
ET



Falkland Islands (the) [Malvinas]
FK



Faroe Islands (the)
FO



Fiji
FJ



Finland
FI



France
FR



French Guiana
GF



French Polynesia
PF



French Southern Territories (the)
TF



Gabon
GA



Gambia (the)
GM



Georgia
GE



Germany
DE



Ghana
GH



Gibraltar
GI



Greece
GR



Greenland
GL



Grenada
GD



Guadeloupe
GP



Guam
GU



Guatemala
GT



Guernsey
GG



Guinea
GN



Guinea-Bissau
GW



Guyana
GY



Haiti
HT



Heard Island and McDonald Islands
HM



Holy See (the)
VA



Honduras
HN



Hong Kong
HK



Hungary
HU



Iceland
IS



India
IN



Indonesia
ID



Iran (Islamic Republic of)
IR



Iraq
IQ



Ireland
IE



Isle of Man
IM



Israel
IL



Italy
IT



Jamaica
JM



Japan
JP



Jersey
JE



Jordan
JO



Kazakhstan
KZ



Kenya
KE



Kiribati
KI



Korea (the Democratic People's Republic of)
KP



Korea (the Republic of)
KR



Kosovo
XK



Kuwait
KW



Kyrgyzstan
KG



Lao People's Democratic Republic (the)
LA



Latvia
LV



Lebanon
LB



Lesotho
LS



Liberia
LR



Libya
LY



Liechtenstein
LI



Lithuania
LT



Luxembourg
LU



Macao
MO



Madagascar
MG



Malawi
MW



Malaysia
MY



Maldives
MV



Mali
ML



Malta
MT



Marshall Islands (the)
MH



Martinique
MQ



Mauritania
MR



Mauritius
MU



Mayotte
YT



Mexico
MX



Micronesia (Federated States of)
FM



Moldova (the Republic of)
MD



Monaco
MC



Mongolia
MN



Montenegro
ME



Montserrat
MS



Morocco
MA



Mozambique
MZ



Myanmar
MM



Namibia
NA



Nauru
NR



Nepal
NP



Netherlands (the)
NL



New Caledonia
NC



New Zealand
NZ



Nicaragua
NI



Niger (the)
NE



Nigeria
NG



Niue
NU



Norfolk Island
NF



Northern Mariana Islands (the)
MP



Norway
NO



Oman
OM



Pakistan
PK



Palau
PW



Palestine, State of
PS



Panama
PA



Papua New Guinea
PG



Paraguay
PY



Peru
PE



Philippines (the)
PH



Pitcairn
PN



Poland
PL



Portugal
PT



Puerto Rico
PR



Qatar
QA



Republic of North Macedonia
MK



Romania
RO



Russian Federation (the)
RU



Rwanda
RW



Réunion
RE



Saint Barthélemy
BL



Saint Helena, Ascension and Tristan da Cunha
SH



Saint Kitts and Nevis
KN



Saint Lucia
LC



Saint Martin (French part)
MF



Saint Pierre and Miquelon
PM



Saint Vincent and the Grenadines
VC



Samoa
WS



San Marino
SM



Sao Tome and Principe
ST



Saudi Arabia
SA



Senegal
SN



Serbia
RS



Seychelles
SC



Sierra Leone
SL



Singapore
SG



Sint Maarten (Dutch part)
SX



Slovakia
SK



Slovenia
SI



Solomon Islands
SB



Somalia
SO



South Africa
ZA



South Georgia and the South Sandwich Islands
GS



South Sudan
SS



Spain
ES



Sri Lanka
LK



Sudan (the)
SD



Suriname
SR



Svalbard and Jan Mayen
SJ



Sweden
SE



Switzerland
CH



Syrian Arab Republic
SY



Taiwan (Province of China)
TW



Tajikistan
TJ



Tanzania, United Republic of
TZ



Thailand
TH



Timor-Leste
TL



Togo
TG



Tokelau
TK



Tonga
TO



Trinidad and Tobago
TT



Tunisia
TN



Turkey
TR



Turkmenistan
TM



Turks and Caicos Islands (the)
TC



Tuvalu
TV



Uganda
UG



Ukraine
UA



United Arab Emirates (the)
AE



United Kingdom of Great Britain and Northern Ireland (the)
GB



United States Minor Outlying Islands (the)
UM



United States of America (the)
US



Uruguay
UY



Uzbekistan
UZ



Vanuatu
VU



Venezuela (Bolivarian Republic of)
VE



Viet Nam
VN



Virgin Islands (British)
VG



Virgin Islands (U.S.)
VI



Wallis and Futuna
WF



Western Sahara
EH



Yemen
YE



Zambia
ZM



Zimbabwe
ZW



Åland Islands
AX

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.