mohesu / map_location_picker

Map location picker for flutter Based on google_maps_flutter
Apache License 2.0
46 stars 68 forks source link

How to get City township #43

Open dghub-founder opened 6 months ago

rvndsngwn commented 2 days ago

Here example of how you get street, locality, city, state, country & postal-code.

latitude: locationResult.geometry.location.lat,
      longitude: locationResult.geometry.location.lng,
      fullAddress: locationResult.formattedAddress ?? '',
      street: locationResult.addressComponents
              .firstWhere(
                (element) => element.types.contains('street_number'),
                orElse: () => AddressComponent(
                  longName: '',
                  shortName: '',
                  types: [],
                ),
              )
              .longName +
          locationResult.addressComponents
              .firstWhere(
                (element) => element.types.contains('route'),
                orElse: () => AddressComponent(
                  longName: '',
                  shortName: '',
                  types: [],
                ),
              )
              .longName,
      placeId: locationResult.placeId,
      locality: locationResult.addressComponents
          .firstWhere(
            (element) => element.types.contains('sublocality_level_1'),
            orElse: () => AddressComponent(
              longName: '',
              shortName: '',
              types: [],
            ),
          )
          .longName,
      city: locationResult.addressComponents
          .firstWhere(
            (element) => element.types.contains('locality'),
            orElse: () => AddressComponent(
              longName: '',
              shortName: '',
              types: [],
            ),
          )
          .longName,
      state: locationResult.addressComponents
          .firstWhere(
            (element) => element.types.contains('administrative_area_level_1'),
            orElse: () => AddressComponent(
              longName: '',
              shortName: '',
              types: [],
            ),
          )
          .longName,
      country: locationResult.addressComponents
          .firstWhere(
            (element) => element.types.contains('country'),
            orElse: () => AddressComponent(
              longName: '',
              shortName: '',
              types: [],
            ),
          )
          .longName,
      postalCode: locationResult.addressComponents
          .firstWhere(
            (element) => element.types.contains('postal_code'),
            orElse: () => AddressComponent(
              longName: '',
              shortName: '',
              types: [],
            ),
          )
          .longName,