iOS 地圖移動中心點獲取
MKMap顯示地圖後,假設用戶移動了地圖。自定義的數據就須要刷新了。所以這個時候。中心點的經緯度就比較重要了。
本文演示怎樣獲取經緯度
在MKMapViewDelegate裏有個方法
- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
這種方法就是在Map移動 後運行。所以我們能夠在這裏獲取移動後地圖中心點的經緯度了。
- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL
MKCoordinateRegion region;
CLLocationCoordinate2D centerCoordinate = mapView.region.center;
region.center= centerCoordinate;
NSLog(@" regionDidChangeAnimated %f,%f",centerCoordinate.latitude, centerCoordinate.longitude);
}
相同有個問題,怎樣獲取用戶點擊地圖某個區域的經緯度呢?
方法例如以下
在ViewDidLoad裏加入tabGuesture
UITapGestureRecognizer *mTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapPress:)];
[self.mapView addGestureRecognizer:mTap];
[mTap release];
-(void)tapPress:(UIGestureRecognizer*)gestureRecognizer
{
CGPoint touchPoint = [gestureRecognizer locationInView:self.mapView ];
CLLocationCoordinate2D touchMapCoordinate =
[self.mapView convertPoint:touchPoint toCoordinateFromView:self.mapView ];
NSLog(@"%f %f",touchMapCoordinate.latitude, touchMapCoordinate.longitude);
}
//移除地圖內全部的大頭針
[mapView removeOverlays:mapView.overlays];
[mapView removeAnnotations:mapView.annotations];
iOS 地圖移動中心點獲取