热门IT资讯网

[IOS]地图的简单应用

发表于:2024-11-28 作者:热门IT资讯网编辑
编辑最后更新 2024年11月28日,IOSMapKit如何快速入门?下面我来写一个简单的Demo,做简要介绍。效果图:操作步骤:1.首先创建一个项目,在xib的view中添加一个MapVIew控件,并且导入MapKit.framewor

IOSMapKit如何快速入门?下面我来写一个简单的Demo,做简要介绍。

效果图:


操作步骤:

1.首先创建一个项目,在xib的view中添加一个MapVIew控件,并且导入MapKit.framework和CoreLocation.frameword框架。

2.实现ViewController的代码:

ViewController.h:

#import  #import  #import  @interface DXWViewController : UIViewController @property (retain, nonatomic) IBOutlet MKMapView *mapview; @property(retain,nonatomic)CLLocationManager *manager; @property(retain,nonatomic)CLLocation *location; @property (retain, nonatomic) IBOutletCollection(UILabel) NSArray *labels; @end 

ViewController.m:

#import "DXWViewController.h" #import "Place.h" @interface DXWViewController ()  @end  @implementation DXWViewController  - (void)viewDidLoad {     [super viewDidLoad];     self.manager  = [[CLLocationManager alloc] init];     self.manager.delegate = self;     //精度     self.manager.desiredAccuracy = kCLLocationAccuracyBest;     [self.manager startUpdatingLocation];       self.mapview.showsUserLocation = YES; }   -(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations {     self.location = [locations objectAtIndex:0];     [self.labels[0] setText:[NSString stringWithFormat:@"%f\u00B0",self.location.coordinate.longitude]];     [self.labels[1] setText:[NSString stringWithFormat:@"%f\u00B0",self.location.coordinate.longitude]];     [self.labels[2] setText:[NSString stringWithFormat:@"%gm",self.location.horizontalAccuracy]];     [self.labels[3] setText:[NSString stringWithFormat:@"%gm",self.location.altitude]];     [self.labels[4] setText:[NSString stringWithFormat:@"%gm",self.location.verticalAccuracy]];          Place *place = [[Place alloc] init];     place.coordinate = self.location.coordinate;     place.title = @"Title";     place.subtitle = @"subTitle";          [self.mapview addAnnotation:place];     //设置精度范围     MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(place.coordinate, 1000, 1000);     [self.mapview setRegion:region animated:YES]; } - (void)didReceiveMemoryWarning {     [super didReceiveMemoryWarning]; }  - (void)dealloc {     [_mapview release];     [_labels release];     [super dealloc]; } @end

3.创建大头针的类:

Place.h:

#import  #import  @interface Place : NSObject  @property(copy,nonatomic)NSString *title; @property(copy,nonatomic)NSString *subtitle; @property(assign,nonatomic)CLLocationCoordinate2D coordinate;  @end


0