我正在使用Xcode 5.1中的mapkit,并尝试在regionDidChangeAnimated中显示地图比例。我现在不知道要做到这一点。我试着环顾四周,但都没有成功。有什么想法吗?
编辑:
-(void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated {
CGPoint nePoint = CGPointMake(self.mapView.bounds.origin.x + mapView.bounds.size.width, mapView.bounds.origin.y);
CGPoint swPoint = CGPointMake((self.mapView.bounds.origin.x), (mapView.bounds.origin.y + mapView.bounds.size.height));
CLLocationCoordinate2D neCoord;
neCoord = [self.mapView convertPoint:nePoint toCoordinateFromView:self.mapView];
CLLocationCoordinate2D swCoord;
swCoord = [self.mapView convertPoint:swPoint toCoordinateFromView:self.mapView];
CLLocationDistance distance = [neCoord distanceFromLocation:swCoord];
}
我在最后一行CLLocationDistance?
收到错误的原因答案 0 :(得分:0)
使用在地图上的坐标和地图视图上的点之间转换的方法,例如convertPoint:toCoordinateFromView:
。为此,请使用视图的边缘点。
现在你有了坐标 - 你可以用CLLocation的distanceFromLocation:
来计算点之间的距离。您可以根据iPhone或iPad的物理属性对视图宽度进行一些假设,并计算比例。