Mapbox Maps SDK for iOS
The Mapbox Maps SDK for iOS is an open-source framework for embedding interactive map views with scalable, customizable vector maps into Cocoa Touch applications on iOS 9.0 and above using Objective-C, Swift, or Interface Builder. It takes stylesheets that conform to the Mapbox Style Specification, applies them to vector tiles that conform to the Mapbox Vector Tile Specification, and renders them using OpenGL.
For setup information, check out the Mapbox Maps SDK for iOS homepage. For detailed usage instructions, read “First steps with the Mapbox Maps SDK for iOS” and consult the online examples.
If you have any questions, please see our help page. We welcome your bug reports, feature requests, and contributions.
Changes in version 4.6.0
Styles and rendering
- Added the ability to style symbol layers labels with multiple fonts and text sizes via the
format
expression operator. (#12624) - Fixed a crash when using the
MGL_LET
,MGL_MATCH
,MGL_IF
, orMGL_FUNCTION
functions without a colon inside anNSExpression
orNSPredicate
format string. (#13189) - Fixed a crash setting the
MGLLineStyleLayer.lineGradient
property to an expression containing the$lineProgress
variable. Added anNSExpression.lineProgressVariableExpression
class property that returns an expression for the$lineProgress
variable. (#13192) - Fixed an issue where feature querying would fail for symbols that set both
MGLSymbolStyleLayer.iconRotation
andMGLSymbolStyleLayer.iconOffset
. (#13105) - Fixed an issue where polygons crossing tile boundaries could be improperly clipped. (#13231)
- Fixed improper wrapping of ±180° longitude values in
MGLCoordinateBounds
. (#13006)
Offline maps
- Added prioritization of user-interactive resource requests, over offline requests. (#13019)
- Added the
-[MGLOfflineStorage putResourceWithUrl:data:modified:expires:etag:mustRevalidate:]
method to allow pre-warming of the ambient cache. (#13022)
Other changes
- Fixed an issue where snapshots had the wrong heading and pitch. (#13123)
- Fixed an issue where
-[MGLMapViewDelegate mapView:shouldChangeFromCamera:toCamera:]
was called with an incorrectly rotatednewCamera
when the user rotated the map. (#13123)
Recent changes
See the full changelog for previous releases.