---
title: "locationManager(_:didDetermineState:for:)"
framework: corelocation
role: symbol
role_heading: Instance Method
path: "corelocation/cllocationmanagerdelegate/locationmanager(_:diddeterminestate:for:)"
---

# locationManager(_:didDetermineState:for:)

Tells the delegate about the state of the specified region.

## Declaration

```swift
optional func locationManager(_ manager: CLLocationManager, didDetermineState state: CLRegionState, for region: CLRegion)
```

## Parameters

- `manager`: The location manager object reporting the event.
- `state`: The state of the specified region. For a list of possible values, see the doc://com.apple.corelocation/documentation/CoreLocation/CLRegionState type.
- `region`: The region whose state was determined.

## Discussion

Discussion The location manager calls this method whenever there is a boundary transition for a region. It calls this method in addition to calling the  locationManager(_:didEnterRegion:) and locationManager(_:didExitRegion:) methods. The location manager also calls this method in response to a call to its requestState(for:) method, which runs asynchronously.

## See Also

### Receiving region-related updates

- [locationManager(_:didEnterRegion:)](corelocation/cllocationmanagerdelegate/locationmanager(_:didenterregion:).md)
- [locationManager(_:didExitRegion:)](corelocation/cllocationmanagerdelegate/locationmanager(_:didexitregion:).md)
- [locationManager(_:monitoringDidFailFor:withError:)](corelocation/cllocationmanagerdelegate/locationmanager(_:monitoringdidfailfor:witherror:).md)
- [locationManager(_:didStartMonitoringFor:)](corelocation/cllocationmanagerdelegate/locationmanager(_:didstartmonitoringfor:).md)
- [CLRegionState](corelocation/clregionstate.md)
