MobileMapViewer ZoomRadius not responding after initial display

I have a MobileMapViewer on a settings screen showing a satellite view of a user’s yard. On Opening, the map initializes correctly with the right zoom using:

MapYard.MapType = MobileMapViewer.MapTypes.Satellite
MapYard.ZoomRadius = GetYardZoom  // returns 0.03, 0.055, or 0.08
MapYard.GoToLocation(lat, lon)

This works perfectly — the map shows at the correct zoom level.

I have a MobileSegmentedButton with three lot size options that should update the zoom live. In the Pressed event I’ve tried:

MapYard.ZoomRadius = span  // 0.03, 0.055, or 0.08
MapYard.GoToLocation(lat, lon)

What happens: The first tap always jumps to an intermediate zoom (~0.065) regardless of which segment is tapped, and subsequent taps do nothing at all.

I’ve tried:

  • Setting ZoomRadius without GoToLocation

  • Setting ZoomRadius before and after GoToLocation

  • Hiding/showing MapYard before updating

  • Calling UpdateYardMap (same code as Opening) from the Pressed event

  • RemoveControl/AddControl (RemoveControl destroys the control)

The zoom values are confirmed correct via DebugLog. The map responds to the first tap but not to the correct value, and ignores all subsequent calls.

Is there a way to force MobileMapViewer to re-render with a new zoom level after initial display?

Xojo 2026R1.1