gpt4 book ai didi

iphone - MKMapView 缩放到 viewDidLoad 上的用户位置?

转载 作者:IT老高 更新时间:2023-10-28 11:47:06 24 4
gpt4 key购买 nike

我正在尝试在 View 加载后将 map 缩放到用户的当前位置,但我收到错误“** * Terminating app due to unaught exception 'NSInvalidArgumentException', reason: 'Invalid Region '"当 View 加载时。请问有人可以帮忙吗?

干杯!

- (void)viewDidLoad
{
[super viewDidLoad];

MKCoordinateRegion mapRegion;
mapRegion.center.latitude = map.userLocation.coordinate.latitude;
mapRegion.center.longitude = map.userLocation.coordinate.longitude;
mapRegion.span.latitudeDelta = 0.2;
mapRegion.span.longitudeDelta = 0.2;
[map setRegion:mapRegion animated: YES];
}

最佳答案

您是否设置了 showsUserLocation = YES?如果设置为 NOMKMapView 将不会更新位置。所以请确保这一点。

MKMapView 对象很可能还没有用户位置。要做到正确,您应该采用 MKMapViewDelegate 协议(protocol)并实现 mapView:didUpdateUserLocation:

map.delegate = self;

...
-(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
{
MKCoordinateRegion mapRegion;
mapRegion.center = mapView.userLocation.coordinate;
mapRegion.span.latitudeDelta = 0.2;
mapRegion.span.longitudeDelta = 0.2;

[mapView setRegion:mapRegion animated: YES];
}

关于iphone - MKMapView 缩放到 viewDidLoad 上的用户位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6063970/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com