Tim*_*Tim 11 iphone objective-c
我MKMapView在地图视图中设置了"显示用户位置".如果应用程序应该使用我的位置的问题,我说是的.然后我看到蓝色的子弹,我可以放大到当前位置.
我读了很多关于此的帖子,但没有解决问题,用户位置不会自动放大.
如果用户允许访问该位置,我希望在启动时进行缩放,否则定义的坐标应该放大.(之后,使用是否允许该位置,它可以更新,但不应该每次都将中心设置为用户位置我得到了位置的更新).
实现此行为的步骤是什么?我试过这个例子:如何在没有CLLocationManager的情况下将MKMapView缩放到用户当前位置?与KVO但它不起作用......
我希望有人有个主意吗?
最诚挚的问候,蒂姆
Jos*_*Lin 24
您是否尝试过委托方法mapView:didUpdateUserLocation:?
我在我的代码中使用了类似的东西:
在.h文件中:
@property (nonatomic, retain) CLLocation* initialLocation;
Run Code Online (Sandbox Code Playgroud)
在.m文件中:
- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
{
if ( !initialLocation )
{
self.initialLocation = userLocation.location;
MKCoordinateRegion region;
region.center = mapView.userLocation.coordinate;
region.span = MKCoordinateSpanMake(0.1, 0.1);
region = [mapView regionThatFits:region];
[mapView setRegion:region animated:YES];
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9158 次 |
| 最近记录: |