iphone:MKMapView

简介:

在iphone上实现地图并不难。在Frameworks中加入MapKit.framework,要对mapView做相应的操作时要添加一个outlet,记得#import<MapKit/MapKit.h>即可。

可参考博客 ios利用MKMapView实现简单的地图

 

显示当前自己位置:利用MKMapView显示自己当前位置的地图


加入CoreLocation.framework,

VC遵循

<CLLocationManagerDelegate>

复制代码
 mapView.showsUserLocation=YES; 

    CLLocationManager *locationManager = [[CLLocationManager alloc] init];//创建位置管理器 
    locationManager.delegate=self;//设置代理 
    locationManager.desiredAccuracy=kCLLocationAccuracyBest;//指定需要的精度级别 
    locationManager.distanceFilter=1000.0f;//设置距离筛选器 
    [locationManager startUpdatingLocation];//启动位置管理器 
    MKCoordinateSpan theSpan; 
    //地图的范围 越小越精确 
    theSpan.latitudeDelta=0.05; 
    theSpan.longitudeDelta=0.05; 
    MKCoordinateRegion theRegion; 
    theRegion.center=[[locationManager location] coordinate]; 
    theRegion.span=theSpan; 
    [mapView setRegion:theRegion]; 
    [locationManager release];
复制代码

 

在xcode中设置模拟器的位置,参照:

xcode4.2 模拟器定位 。xcode4.2 添加GPX文件。手工指定位置。 

 

给当前位置加大头针:

使用的是MKMapViewDelegate的mapView:viewForAnnotation:方法

复制代码
  - (MKAnnotationView *)mapView:(MKMapView *)mV viewForAnnotation:(id <MKAnnotation>)annotation
    {
        MKPinAnnotationView *pinView = nil;

            static NSString *defaultPinID = @"com.invasivecode.pin";
            pinView = (MKPinAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:defaultPinID];
            if ( pinView == nil ) pinView = [[[MKPinAnnotationView alloc]
                                              initWithAnnotation:annotation reuseIdentifier:defaultPinID] autorelease];
            pinView.pinColor = MKPinAnnotationColorRed;
            pinView.canShowCallout = YES;
            pinView.animatesDrop = YES;
             [mapView.userLocation setTitle:@"欧陆经典"];
           [mapView.userLocation setSubtitle:@"vsp"];
         return pinView;
    }
复制代码

参照:http://www.cocoachina.com/iphonedev/sdk/2010/1020/2216.html

 

MKAnnotationView 有一个image属性,应该可以改掉大头针的图形,改为flag?!

 

http://www.helmsmansoft.com/index.php/archives/980罗盘功能

 

 

//设置经纬度

CLLocationCoordinate2D coord = {39.904667,116.408198};

//设置显示范围

MKCoordinateSpan span = MKCoordinateSpanMake(0.4,0.4);

//设置地图显示的中心和范围

MKCoordinateRegion region = MKCoordinateRegionMake(coord,span);

//根据设置的信息进行显示

[mapView setRegion region animated:NO];

[mapView sizeToFit];

   本文转自老Zhan博客园博客,原文链接:http://www.cnblogs.com/mybkn/archive/2012/05/14/2499896.html,如需转载请自行联系原作者
相关文章
|
1月前
|
网络安全 开发工具 数据安全/隐私保护
ipa 如何安装到 iphone
ipa 如何安装到 iphone
|
传感器 编解码 算法
拿到iPhone X 后,你首先要做的10件事!
据 iPhone X 全球正式发售也近两周了,国内外媒体对这款代表着苹果未来10年发展方向的新机,已有了不少评测和总结,科技君今天就给各位果粉小伙伴们整理下有关 iPhone X 上手的十个必备技巧,助你发挥出它全部的潜力和乐趣。
187 0
拿到iPhone X 后,你首先要做的10件事!
|
人工智能 自动驾驶 iOS开发
苹果患上iPhone依赖症
苹果患上iPhone依赖症
110 0
苹果患上iPhone依赖症
|
编解码 iOS开发 芯片
iPhone SE2发布,它跟iPhone 8有什么不同?
昨天晚上,苹果又双叕在官网直接上架了新产品,它就是果粉们期待已久的第二代iPhone SE。
233 0
iPhone SE2发布,它跟iPhone 8有什么不同?
|
Web App开发 iOS开发 内存技术
苹果允许Flash程序在iPad和iPhone中使用
北京时间11月5日,据国外媒体报道,苹果已经允许某些Flash视频播放程序在iPad和iPhone中使用。Skyfire2.0售价2.99美元,受欢迎程度在苹果Safari浏览器之上。有开发者在Skyfire2.0演示视频中称,当一个嵌有Flash视频的页面被浏览时,该视频会在一个独立的部件中播放,观看效果毫无差异。
962 0
|
安全 iOS开发
苹果发布五个iPhone和iPod Touch系统补丁
2月4日消息,据国外媒体报道,苹果本周二发布了五个iPhone和iPod Touch系统补丁,修复了几个可以允许攻击者遥控控制这些设备的漏洞。 据苹果公司透露,一旦iPhone或者iPod Touch用户打开恶意的音频或者图像文件,或者访问了一个恶意FTP(文件传输协议)服务器,其中的三个漏洞就可能允许他人通过运行代码来实现远程控制用户的设备。
767 0
|
Shell iOS开发
Iphone攻与防-一
iphone-越狱机Hook APP 价值
1610 0