首先來說說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(@"寮