首先來說說ios地圖開發使用的主要類:
MKMapView:地圖控件,無其他Label等控件無異,拖進來就可以用了,用於地圖的內容的顯示,用戶可以對地圖進行放大、縮小、拖動、旋轉等操作;CLLocationManager :用戶所在位置的管理類,通過該類的能夠獲取用戶所在的GPS坐標。
下面與大家分享一些個人項目中地圖部分所涉及到的知識,都是入門級別的,大神請繞過:
1、地圖顯示
地圖顯示抓住兩個要素,一是中心坐標點,二是地圖跨度。假設坐標中心點為(0,0),跨度為(8, 6),則地圖的顯示范圍為[-4, -3]到[4, 3]。代碼如下:
//設置中心坐標點
CLLocationCoordinate2D curLocation;
curLocation.latitude = 23.9098099;
curLocation.longitude = 112.980980;
//設置地圖跨度
MKCoordinateSpan span;
span.latitudeDelta = 0.008;
span.longitudeDelta = 0.008;
//顯示地圖
MKCoordinateRegion region = {curLocation, span};
[self.mapView setRegion:region animated:NO];
如代碼所示,設置好中心坐標點和地圖跨度後,調用setRegion完成地圖的顯示,其中animated參數表示是否在顯示地圖時使用動畫。2、定位
如何獲取我們目前所在的位置並並將其顯示在地圖上呢?
前面介紹的CLLocationManager的派上用場了,分三步進行。
第一步:開啟app的定位功能:
if (self.locationManager == nil){
self.locationManager = [[CLLocationManager alloc] init];
self.locationManager.delegate = self;
self.locationManager.desiredAccuracy = kCLLocationAccuracyBest;
self.locationManager.distanceFilter = 1000.0;
NSLog(@"寮