← Files MapboxARCHIVED FILE
skills/mapbox-ios-patterns/references/camera-styles.md
1.95 KB · Sep 30, 2026 · 23:11 UTC
# Camera Control + Map Styles
---
## Camera Control
### Set Camera Position
```swift
// SwiftUI - Update viewport state
viewport = .camera(
center: CLLocationCoordinate2D(latitude: 40.7128, longitude: -74.0060),
zoom: 14,
bearing: 90,
pitch: 60
)
// UIKit - Immediate
mapView.mapboxMap.setCamera(to: CameraOptions(
center: CLLocationCoordinate2D(latitude: 40.7128, longitude: -74.0060),
zoom: 14,
bearing: 90,
pitch: 60
))
```
### Animated Camera Transitions
```swift
// Fly animation (dramatic arc)
mapView.camera.fly(to: CameraOptions(
center: destination,
zoom: 15
), duration: 2.0)
// Ease animation (smooth)
mapView.camera.ease(to: CameraOptions(
center: destination,
zoom: 15
), duration: 1.0)
```
### Fit Camera to Coordinates
```swift
let coordinates = [coord1, coord2, coord3]
let camera = mapView.mapboxMap.camera(for: coordinates,
padding: UIEdgeInsets(top: 50, left: 50, bottom: 50, right: 50),
bearing: 0,
pitch: 0)
mapView.camera.ease(to: camera, duration: 1.0)
```
---
## Map Styles
### Built-in Styles
```swift
// SwiftUI
Map(viewport: $viewport)
.mapStyle(.standard) // Mapbox Standard (recommended)
.mapStyle(.streets) // Mapbox Streets
.mapStyle(.outdoors) // Mapbox Outdoors
.mapStyle(.light) // Mapbox Light
.mapStyle(.dark) // Mapbox Dark
.mapStyle(.standardSatellite) // Satellite imagery
// UIKit
mapView.mapboxMap.loadStyle(.standard)
mapView.mapboxMap.loadStyle(.streets)
mapView.mapboxMap.loadStyle(.dark)
```
### Custom Style URL
```swift
// SwiftUI
Map(viewport: $viewport)
.mapStyle(MapStyle(uri: StyleURI(url: customStyleURL)!))
// UIKit
mapView.mapboxMap.loadStyle(StyleURI(url: customStyleURL)!)
```
**Style from Mapbox Studio:**
```swift
let styleURL = URL(string: "mapbox://styles/username/style-id")!
```
SHA-256: 987a53892b51444955a30e75fc108a8dcb0006b0b7ae30b176114ec9f58b909c