1. 程式人生 > >iOS 地圖移動中心點獲取

iOS 地圖移動中心點獲取

content 移動 overlay release reg ota popu top from


MKMap顯示地圖後,假設用戶移動了地圖。自定義的數據就須要刷新了。所以這個時候。中心點的經緯度就比較重要了。


本文演示怎樣獲取經緯度


MKMapViewDelegate裏有個方法


- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated


這種方法就是在Map移動 後運行。所以我們能夠在這裏獲取移動後地圖中心點的經緯度了。




- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL

)animated {

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 地圖移動中心點獲取