繁体   English   中英

将MapKit区域按钮动作转换为方法

[英]Translate MapKit Region Button Action to Method

事先为必定如此简单的事情道歉。

我希望地图缩放到围绕用户位置的以编程方式定义的区域。 我已经找到了很多通过按钮操作完成的代码,但是我需要在地图加载时自动完成。 我将在这里发布我尝试过的内容。 可能缺少一些非常明显的东西。 这两者的实质都是按钮动作,因此我假设我的问题出在我的方法代码上(每个方法的第一行)。

方法1:使用MKCoordinateSpanMake

- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
{
    float spanX = 0.00725;
    float spanY = 0.00725;
    MKCoordinateRegion region;
    region.center.latitude = self.mapView.userLocation.coordinate.latitude;
    region.center.longitude = self.mapView.userLocation.coordinate.longitude;
    region.span = MKCoordinateSpanMake(spanX, spanY);
    [self.mapView setRegion:region animated:YES];

}

方法2:使用MKCoordinateRegionMakeWithDistance

- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
{
MKUserLocation *userLocation = _mapView.userLocation;
    MKCoordinateRegion region =
    MKCoordinateRegionMakeWithDistance (
                                        userLocation.location.coordinate, 3000, 3000);
    [_mapView setRegion:region animated:YES];
}

与往常一样,非常感谢您的时间和建议。

移至viewDidLoad:

- (void)viewDidLoad
{
    MKUserLocation *userLocation = _mapView.userLocation;
    MKCoordinateRegion region =[_mapView regionThatFits:MKCoordinateRegionMakeWithDistance (userLocation.location.coordinate, 3000, 3000)];
    [_mapView setRegion:region animated:YES];
}

希望对您有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM