fix: support devices with cutouts for DataDrivenDatasetStylingActivity.java demo by dkhawk · Pull Request #1979 · googlemaps-samples/android-samples

@dkhawk

kikoso

kikoso

kikoso

@kikoso kikoso changed the title fix: support devices with cutouts for DataDrivenDatasetStylingActivit… fix: support devices with cutouts for DataDrivenDatasetStylingActivity.java demo

Feb 14, 2025

@dkhawk

…selection

This commit enhances the DataDrivenBoundariesActivity demo with UI and
functionality improvements focusing on boundary type selection and visual
enhancements.

- Implements Material Design theming and UI elements.
- Adds boundary type selection via PopupMenu (Locality, Admin Area, Country).
- Refactors styling and implements persistent country selection.
- Handles system UI insets for improved display.

These changes improve the demo's user experience and code structure,
better showcasing data-driven boundary styling.
This commit introduces dataset-specific zoom levels to the DataDrivenDatasetStylingActivity, enhancing the user experience when switching between datasets.

- Adds a `zoomLevel` field to the `DataSet` class to store the desired zoom level for each dataset.
- Updates the `dataSets` array to include appropriate zoom levels for Boulder, New York, and Kyoto datasets.
- Modifies the `centerMapOnLocation` method to accept a `zoomLevel` parameter, allowing it to be dynamically set.
- Updates the `switchDataSet` method to utilize the `zoomLevel` from the selected `DataSet` when centering the map, ensuring the map zooms to the optimal level for each dataset.
- Removes the previously hardcoded `ZOOM_LEVEL` constant, as the zoom level is now dataset-dependent.

These changes ensure that when a user selects a dataset, the map automatically zooms to a relevant level for that specific dataset, improving clarity and usability of the demo.

Also adds missing copyright header.

@dkhawk dkhawk deleted the fix/datadrivenstyling-cutout-support branch

February 14, 2025 22:51