我是mapkit的新手,正在尝试添加"滑动/滑动和缩放到类型转换效果"我经常在这些地图应用程序中看到MkMapView。
例如,我可能会通过触摸/捏合和缩放来查看,导航和缩放地图,然后点击"转到我的位置"例如,然后它会滑动/滑过,然后使用我设置的区域/视图大小缩小到我的位置,就像我猜你可以调用的过渡效果一样。 这是怎么做到的?有没有这样做的方法,还是你必须手动编程这个效果?
目前我会按"转到我的位置"按钮,它转到我当前的位置,大小是我想要的,但没有滑动/滑动/缩放过渡类型的效果。 任何帮助都会很棒
- (IBAction)zoomToCurrentLocation:(id)sender {
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.latitudeDelta = spanX;
region.span.longitudeDelta = spanY;
[self.mapView setRegion:region animated:YES];
}
答案 0 :(得分:0)
动画序列如下:
在第一个动画块中, 滑动/滑动 会映射到您指定的位置(假设用户位置)。
然后在完成块中:
另一个动画 放大/缩小 到您的位置。根据需要更改适当的值。
- (void) showUserLocation {
[UIView animateWithDuration:1.5 animations:^{
[self.mapView setCenterCoordinate:self.mapView.userLocation.coordinate];
} completion:^(BOOL finished) {
[UIView animateWithDuration:1.5 animations:^{
MKCoordinateSpan span;
span.latitudeDelta = 1;
span.longitudeDelta = 1;
MKCoordinateRegion region;
region.span = span;
region.center = self.mapView.userLocation.coordinate;
[self.mapView setRegion:region animated:YES];
}];
}];
}