我正在创建一个MKMapView应用程序,我想为用户提供一个深入缩放MKCircle的工具来查看注释,同时如果用户想要返回到之前的缩放级别以查看该圆圈,他只需要按下相同的按钮。 我没有得到如何切换缩放级别?如何放大和缩小在MKMapView中的MKCircle在同一个按钮点击ios?
//在下面的代码中,我已经计算mkcircle半径戴上它的MKMapView
- (IBAction)adjustCircle:(id)sender{
long radius=[self calculateRadius];
NSLog(@"draw circle of radius=%ld",radius);
//int meter = 1000;
MKCircle *circle= [[MKCircle alloc]init];
circle = [MKCircle circleWithCenterCoordinate:CLLocationCoordinate2DMake([groupLat floatValue], [groupLon floatValue]) radius:radius];
[myMapView addOverlay:circle];
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(CLLocationCoordinate2DMake([groupLat floatValue], [groupLon floatValue]), 500, 500);
region.span.latitudeDelta =[self getZoomLevel:circle];
region.span.longitudeDelta =[self getZoomLevel:circle];
[myMapView setRegion:region animated:YES];
-(int) getZoomLevel:(MKCircle*) circle {
zoomLevel = 11;
if(isShowLocPoints == YES){
return 20;
}
if (circle != nil) {
double radius = [circle radius] + [circle radius]/2;
double scale = radius/500;
zoomLevel=(16 - log(scale)/log(2));
}
NSLog(@"zoom level=%d",zoomLevel);
return zoomLevel;
感谢
写你已经试过的代码1 – Lion