Вы можете просто установить его равным latitudeDelta
, и вид карты будет корректироваться по мере необходимости.
Но вам не нужно рассчитывать интервал самостоятельно.Вы можете использовать:
region = MKCoordinateRegionMakeWithDistance(
placemark.region.center,
placemark.region.radius,
placemark.region.radius);
Не уверен насчет второй части вашего вопроса.
В iOS 7 и выше
region
, возвращаемый
CLPlacemark
, на самом деле является
CLCircularRegion
(см.
Устаревшие методы CLRegion - как получить радиус? ).
Хотя исходный код все еще будет работать как есть, вы можете получить предупреждение компилятора о том, что radius
и center
устарели.
Чтобы избежать предупреждения, приведите region
как CLCircularRegion
:
CLCircularRegion *pmCircularRegion = (CLCircularRegion *)placemark.region;
region = MKCoordinateRegionMakeWithDistance(
pmCircularRegion.center,
pmCircularRegion.radius,
pmCircularRegion.radius);