您的位置:首页 > 移动开发 > IOS开发

IOS - 访问地图

2020-03-01 03:39 435 查看

简介

地图总是帮助我们找到地方。地图整合到 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

转载于:https://www.cnblogs.com/pptee/p/3297965.html

  • 点赞
  • 收藏
  • 分享
  • 文章举报
deppon_jing1990 发布了0 篇原创文章 · 获赞 0 · 访问量 9 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: