简介
地图总是帮助我们找到地方。地图整合到 iOS MapKit框架工作。
涉及的步骤
1. 创建一个简单的应用程序
2. 选择项目文件,然后选择目标,添加MapKit.framework
3. 我们还应该加上Corelocation.framework
4.添加一个IBOutlet ViewController.xib 创建一个MapView,并将它命名为MapView类
5. 现在创建一个新的文件,通过选择 File-> New -> File... -> select Objective C 类然后点击下一步
6. 命名类名为 MapAnnotation 并继承自 NSObject
7. 选择创建
8. 更新内容 MapAnnotation.h 如下
#import <Foundation/Foundation.h>#import <MapKit/MapKit.h>@interfaceMapAnnotation:NSObject<MKAnnotation>@property(nonatomic, strong)NSString*title;@property(nonatomic, readwrite)CLLocationCoordinate2D coordinate;-(id)initWithTitle:(NSString*)title andCoordinate:(CLLocationCoordinate2D)coordinate2d;@end
9. 现在更新 MapAnnotation.m 如下
#import "MapAnnotation.h"@implementationMapAnnotation-(id)initWithTitle:(NSString*)title andCoordinate:(CLLocationCoordinate2D)coordinate2d{self.title = title;self.coordinate =coordinate2d;returnself;}@end
11. 现在更新 ViewController.h 如下
#import <UIKit/UIKit.h>#import <MapKit/MapKit.h>#import <CoreLocation/CoreLocation.h>@interfaceViewController:UIViewController<MKMapViewDelegate>{MKMapView*mapView;}@end
12. 现在更新 ViewController.m 如下
#import "ViewController.h"#import "MapAnnotation.h"@interfaceViewController()@end@implementationViewController-(void)viewDidLoad {[super viewDidLoad]; mapView =[[MKMapView alloc]initWithFrame:CGRectMake(10,100,300,300)]; mapView.delegate=self; mapView.centerCoordinate =CLLocationCoordinate2DMake(37.32,-122.03); mapView.mapType =MKMapTypeHybrid;CLLocationCoordinate2D location; location.latitude =(double)37.332768; location.longitude =(double)-122.030039;// Add the annotation to our map viewMapAnnotation*newAnnotation =[[MapAnnotation alloc] initWithTitle:@"Apple Head quaters" andCoordinate:location];[mapView addAnnotation:newAnnotation];CLLocationCoordinate2D location2; location2.latitude =(double)37.35239; location2.longitude =(double)-122.025919;MapAnnotation*newAnnotation2 =[[MapAnnotation alloc] initWithTitle:@"Test annotation" andCoordinate:location2];[mapView addAnnotation:newAnnotation2];[self.view addSubview:mapView];}// When a map annotation point is added, zoom to it (1500 range)-(void)mapView:(MKMapView*)mv didAddAnnotationViews:(NSArray*)views {MKAnnotationView*annotationView =[views objectAtIndex:0]; id <MKAnnotation> mp =[annotationView annotation];MKCoordinateRegion region =MKCoordinateRegionMakeWithDistance([mp coordinate],1500,1500);[mv setRegion:region animated:YES];[mv selectAnnotation:mp animated:YES];}-(void)didReceiveMemoryWarning {[super didReceiveMemoryWarning];// Dispose of any resources that can be recreated.}@end
输出
现在,当我们运行程序时,我们会得到的输出如下所示。
当我们地图滚动起来,如下图所示,我们将得到的输出。
本站文章除注明转载外,均为本站原创或编译
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,传播学习教程;
转载请注明:文章转载自:易百教程 [http://www.yiibai.com]
本文标题:IOS - 访问地图
转载请保留原文链接:http://www.yiibai.com/html/ios/2013/0903237.html
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,传播学习教程;
转载请注明:文章转载自:易百教程 [http://www.yiibai.com]
本文标题:IOS - 访问地图
转载请保留原文链接:http://www.yiibai.com/html/ios/2013/0903237.html