- 首先建立一個SingleView Project,然後加入兩個frameworks, MapKit.framework及CoreLocation.framework
- 在ViewController.h當中加入MapKit,並且新增variable來儲存MapView.
#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>@interface ViewController : UIViewController <MKMapViewDelegate>{MKMapView *mapView;}@property (nonatomic, retain) IBOutlet MKMapView *mapView;@end - 打開ViewController.m,同步mapView並且於viewDidLoad時立即指定地圖顯示的位置
#import "ViewController.h"@implementation ViewController
@synthesize mapView;- (void)viewDidLoad{[super viewDidLoad];[self goLocation];}-(void)goLocation{MKCoordinateRegion newRegion;newRegion.center.latitude=22.299738;newRegion.center.longitude=114.177818;newRegion.span.latitudeDelta=0.0216;newRegion.span.longitudeDelta=0.018582;[self.mapView setRegion:newRegion animated:YES];} - 開啟Storyboard,將Map View拉出,並將Map View連結到mapView.這時按下build and run,你就會看到地圖,並且地圖立即移動到我們指定的位置。
如何在地圖中為我們指定的地點加入指針?
- 在ViewController.h中加入一個method,叫addAnnotation,當我們的按鈕按下時,就執行動作,將指針加入到我們的地圖上.
-(IBAction)addAnnotation; - 接下來於ViewController.m編寫完整的addAnnotation.我們先設定加入指針的座標,然後再建立MKPointAnnotation,並傳入我們指定目標及按下指針時顯示的文字。
-(IBAction)addAnnotation{mapView.mapType=MKMapTypeSatellite;CLLocationCoordinate2D coordinate;coordinate.latitude = 22.299738;coordinate.longitude = 114.177818;MKPointAnnotation *annotation = [[MKPointAnnotation alloc] init];[annotation setCoordinate:coordinate];[annotation setTitle:@"Some Title"];[self.mapview removeAnnotations:self.mapview.annotations];[self.mapview addAnnotation:annotation];} - 最後我們打開storyboard,加入一個按鈕,並設定如按下按鈕就執行addAnnotation.
沒有留言:
張貼留言