IOS 地图相关知识点
iOS 6.1正式版可能在下周发布
据idownloadblog网站报道,可靠消息人士称iOS 6.1的第五个测试版,也就是GM版将很快发布。消息称目前iOS 6.1 GM正在内部测试之中,如果没有大问题,开发者将很快能下载。消息人士称iOS 6.1 GM版最早今天,最晚下周一就会开放下载。
苹果在11月初向开发者发布了iOS 6.1第一个测试版,目前苹果一共发布了4个测试版,最新的测试版在12月中旬发布。iOS 6.1的新功能不多,包括可以通过Siri使用Fandango服务购买电影票,首次为设备设定iCloud时用户需要输入安全问题。对于开发者来 说,iOS 6.1加入了功能更强的MapKit框架,任何第三方应用都可以嵌入苹果全新的地图服务。
iOS 6.1支持的设备包括iPhone 5、iPhone 4S和iPhone 3GS;第四代、第三代和第二代iPad;iPad mini和第四、第五代iPod touch。
[转]MapKit[3]
iOS地图位置开发
iPhone SDK提供了三个类来管理位置信息:CLLocation CLLocationManager 和 CLLHeading(不常用)。除了使用GPS来获取当前的位置信息外,iPhone也可以基于WiFi基站和无线发射塔来获得位置信息。GPS的精度最高,可以精确到米级别,但是也最耗电。
------------CLLocation
CLLocation类代表一个位置信息,其中还包括了方向和速度。比如我在长安街188号以5公里/小时的速度往西走。CLLocation具有下面的属性和方法:
@property CLLocationCoordinate2D coordinate; //以经度和纬度表示的位置信息
@property CLLocationDistance altitude; //海拔
@property CLLocationAccuracy horizontalAccuracy; //水平精度(如:精确到米)
@property CLLocationAccuracy verticalAccuracy; //垂直精度
@property CLLocationDire...
[转]MapKit[2]
转自: http://www.wangenlei.com/1543.html
首先我们需要一个视图去呈现地图,苹果自带一个关于地图视图的类,名字叫MKMapView,可以在MapKit这个框架找到,所以用到地图需要在头文件中#import <MapKit/MapKit.h>,这样大家已经可以看到一个地图了,可以拖拽以及缩放。
下面是重点介绍如何去操作地图。
在这里我想介绍关于地图几个重要的属性和方法。
第一个属性:@property (nonatomic) MKMapType mapType;
这是一个结构体,有三个属性,决定地图的呈现风格。(在全房应用中没有用到,但我还是在这里提及一下)下面是关于这三个属性的介绍:
standard:标注地图,显示街道和街道名
Satellite:卫星图片区
Hybrid:卫星图,同时在相应区域有标注了街道和街道名
第二个属性:@property (nonatomic) MKCoordinateRegion region;
同样这也是一个结构体,看到名字应该想到这是一个标注视图上显示的地图区域。基本上一个区域是由中心点,和经度、纬度的跨越度决定的,这个跨越度也就是视图上...
[转]MapKit[1]
1.MKMapView的显示
(1)创建MKMapView
CGRect rect = CGRectMake(0, 20, 320, 460); MKMapView *mapView = [[MKMapView alloc] initWithFrame:rect];
(2)设定经纬度
CLLocationCoordinate2D theCoordinate; theCoordinate.latitude=24.148926; theCoordinate.longitude=120.715542;
(3)设定显示范围
MKCoordinateSpan theSpan; theSpan.latitudeDelta=0.1; theSpan.longitudeDelta=0.1;
(4)设置地图显示的中心及范围
MKCoordinateRegion theRegion; theRegion.center=theCoordinate; theRegion.span=theSpan;
(5)设置地图显示的类型及根据范围进行显示
[mapVi...
iOS开发之在地图上绘制出你运行的轨迹
iOS中的MapKit集成了google地图api的很多功能加上iOS的定位的功能,我们就可以实现将你运行的轨迹绘制到地图上面。这个功能非常有用,比如汽车的gprs追踪、人员追踪、快递追踪等等。这篇文章我们将使用Map Kit和iOS的定位功能,将你的运行轨迹绘制在地图上面。
实现
在之前的一篇文章:iOS开发之在google地图上显示自己的位置中描述了如何在地图上显示自己的位置,如果我们将这些位置先保存起来,然后串联起来绘制到地图上面,那就是我们的运行轨迹了。
首先我们看下如何在地图上绘制曲线。在Map Kit中提供了一个叫MKPolyline的类,我们可以利用它来绘制曲线,先看个简单的例子。
使用下面代码从一个文件中读取出经纬度,然后创建一个路径:MKPolyline实例。
-(void) loadRoute { NSString* filePath = [[NSBundle mainBundle] pathForResource:@”route” ofType:@”csv”]; NSString*fileContents = [NSString stringW...
MapKit基本知识
MapViews 用Core Location 来保存用户的路径并在地图上用一个蓝色的点表示出来。 你可以打开:mapView.showUserLocation = YES;
如果地图跟踪的是用户的未知,你可以通过只读的属性userLcoationVisible 来检测用户当前的位置是不是可见的。如果是YES,就是可见的。
你可以首先设定 showsUserLocation 为 YES来得到用户当前指定的坐标。然后访问userLocation 属性。这个属性返回一个MKUserLocation的实例变量。 MKUserLocation 是一个对象,有一个属性叫做location(CLLocation 类型)。 一个CLLocation 包含一个coordinate属性指向一个坐标的集合,所有的这些意味着你可以得到实际的坐标从MKUserLocation对象里:下属那个:
CLLocationCoordinae2D coords = mapView.userLocation.location.coordinate;
Coordinate Regions
如果你不告诉要显...
MKMapView使用的一些技巧
Mapkit 集群功能
网上搜了下,在github上找一到一个api,可以实现这样的功能,下面是这个api使用的例子,需要的可以下载研究下。
Api:Source Code
通过Mapkit 集群功能 - bl1988530的专栏 - 博客频道 - CSDN.NET.
地图mkmapview根据地名查询经纬度
,如:国家、城市和街道名等。这个类使用的是google map的服务。
有reverseGeocoding,google同时也提供了google geocoing api的服务,如果我们想通过地名查询来获取这个地方的
更多信息,可以使用这个api。
它可以返回很多种格式的信息,如:json,xml,kml,csv等。方便用户根据需要来使用。
使用格式如下:
http://maps.google.com/maps/api/geocode/json?address=taiguo&sensor=true
返回的json:
{
"results" : [
{
"address_components" : [
{
"long_name" : "泰国",
"short_name" : "TH",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "泰国",
"geometry" : {
"bounds" : {
"...
iOS地图的注释(Annotation)
2.在地图上显示annotation,需要提供两个对象
annotation object)
annotation view.)
注释对象通常是一些小的数据对象,保存了地图的坐标和一些相关信息。
Map Kit提供了一些标准的注释视图,你也可以使用自定义的注释视图。但是不能将注释视图直接添加到map view,而是使用map view的代理对象来提供。
3.添加注释的具体步骤
定义一个注释对象annotation object :
使用MKPointAnnotation类来实现一个简单的注释,这类注释可以显示标题和副标题。
自定义一个遵守MKAnnotation协议的对象,这类注释可以存储任何类型数据
定义一个注释视图annotation view来显示数据:
如果注释可以由一张静态图片表示,则创建一个MKAnnota...
MapKit学习笔记
插入MapView,设置Delegate(一般为Controller),Annotations记录兴趣位置点(AnnotationView用来显示兴趣位置点),annotation是可选的,选中的annotation会显示callout,用来显示信息。
2、设置地图显示类型:
mapView.mapType = MKMapTypeStandard;
mapView.mapType = MKMapTypeSatellite;
mapView.mapType = MKMapTypeHybrid;
3、显示用户位置
设置为可以显示用户位置:
mapView.showsUserLocation = YES;
判断用户当前位置是否可见(只读属性):
userLocationVisible
得到用户位置坐标:当userLocationVisible为YES时
CLLocationCoordinate2D coords = mapView.userLocation.location.coordinate;
4、坐标范围
MKCoordinateRegion用来设置坐标显示范围。
包括两部分:Center(CLLocat...
mkmapview 开发
CLLocationManager
CLLocationManager使用步骤
1.创建一个CLLocationManager实例
CLLocationManager*locationManager = [[CLLocationManager alloc] init];
2.设置CLLocationManager实例委托和精度
locationManager.delegate =self;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
3.设置距离筛选器distanceFilter,下面表示设备至少移动1000米,才通知delegate
locationManager.distanceFilter = 1000.0f;
或者没有筛选器的默认设置:
locationManager.distanceFilter = kCLDistanceFilterNone;
4.启动请求
[locationManager startUpdatingLocation];
5.停止请求
[locationManager stopUpdatingLocation];...
Core Location 简述
Core Location可以利用三种技术来实现:GPS、蜂窝基站三角网定位(cell tower triangulation)和Wi-Fi定位服务(WPS),其中GPS是最精确的。
我们只用告诉Core Location我们想要的精度级别,它将从它可用的技术中决定哪种可以更好地满足你的需求。
为了与Core Location打交道,需要创建一个位置管理器实例,如下所示:
CLLocationManager *locationManager = [[CLLocationManageralloc]init];
这将创建一个实例,但它并没有马上开始工作。
设置委托和请求指定精度级别:
locationManager.desiredAccuracy =kCLLocationAccuracyBest;
这将指定最高精度级别,其他值还有:kCLLocationAccuracyNearestTenMeters、kCLLocationAccuracyHundredMeters、kCLLocationAccuracyKilometer和kCLLocationAccuracyThreeKilometers。
设置距离筛...
使用CLLocationManager对象来测量位置
#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h> //这里要添加框架
@interface coreLocationViewController : UIViewController <CLLocationManagerDelegate>{
CLLocationManager *man;
}
@property(nonatomic, retain) CLLocationManager *man;
@end
#import "coreLocationViewController.h"
#import <CoreLocation/CoreLocation.h>
@implementation coreLocationViewController
@synthesize man;
- (void)viewDidLoad {
[super viewDidLoad];
man = [[CLLocationManager alloc] init];
// 如果可以利用本地服务时
if([man locationServicesEnabled]){
/...
怎么调用系统的google地图定位到特定经纬度的地方
[[UIApplication sharedapplication] openurl:????]
如果是maps://maps.google.com 好像是打开google地图啊 特定的经纬度在哪里体现啊?
答案1:
似乎是maps://maps.google.com/maps?lat=XXXXX&lon=XXXXXX,有点不记得了
答案2:
别人的代码:
NSString *mapUrl = [NSString stringWithFormat: @"http://maps.google.com/maps?q=%f,%f", loc.latitude, loc.longitude];
NSURL *url = [NSURL URLWithString:mapUrl];
[[UIApplication sharedApplication] openURL:url];
类似
http://maps.google.com/maps?q=37.0,-122.0
来自:http://www.cocoachina.com/bbs/read.php?tid=1125...
根据经纬度得到城市地区名
2.#import <MapKit/MKReverseGeocoder.h>
#import <MapKit/MKPlacemark.h>
3.添加委托MKReverseGeocoderDelegate
4.-(void) startedReverseGeoderWithLatitude:(double)latitude longitude:(double)longitude{
CLLocationCoordinate2D coordinate2D;
coordinate2D.longitude = longitude;
coordinate2D.latitude = latitude;
MKReverseGeocoder *geoCoder = [[MKReverseGeocoder alloc] initWithCoordinate:coordinate2D];
geoCoder.delegate = self;
[geoCoder start];
}
-(void)reverseGeocoder:(MKReverseGeocoder *)geocoder did...
IOS 地图相关知识点相关推荐
- iOS--百度地图相关功能的实现
###一.配置百度地图SDK ####1. 申请密钥 进入应用管理平台,点击创建应用然后点击提交 密钥就申请成功了!! 在左侧的查看应用里面,就可以看到刚刚申请好的密钥. ####2. 下载百度地图S ...
- Unity 之 解决包体过大问题记录和纹理相关知识点整理
Unity 之 解决包体过大问题记录和纹理相关知识点整理 一,发现问题: 二,分析问题: 三,解决问题 3.1 问题分析 3.2 解决方案一 3.3 解决方案二 四,相关知识: 4.1 纹理导入: 4 ...
- iOS iOS 地图与定位开发系列教程
iPhone SDK提供了三个类来管理位置信息:CLLocation CLLocationManager 和 CLLHeading(不常用).除了使用GPS来获取当前的位置信息外,iPhone也可以基 ...
- WebGIS地图相关学习笔记
这里将记录学习gis地图相关内容的时候,如果碰到了不懂或不理解的知识点的时候,会记录在这里. 进阶问题 Web地图服务规范(WMS.WMTS.TMS)简析_surpassLiang的博客-CSDN博客 ...
- ios 地图 省市轮廓_iOS 14中的新增功能:视觉轮廓检测
ios 地图 省市轮廓 WWDC20 (WWDC20) Apple's WWDC 2020 (digital-only) event kickstarted with a bang. There we ...
- iOS地图定位导航与大头针的简单使用
定位 1.一次定位 1.创建位置管理器 // 这里创建的管理其对象如果没有强引用,就会造成你后面的操作不会出现效果,全局变量强引用.CLLocationManager *manager = [[CLL ...
- VSLAM 相关知识点总结
VSLAM 相关知识点 这篇文章是对VSLAM涉及的知识点进行系统性的总结和更新,一些内容来源至VSLAM经典教材,博客,和开源项目(引用材料如下表) SLAM十四讲高博 古月老师的技术博客 崔神的g ...
- HTML相关知识点总结
文章来源: 学习通http://www.bdgxy.com/ 普学网http://www.boxinghulanban.cn/ 智学网http://www.jaxp.net/ 目录 简介 HTML文档 ...
- 招聘信息显示苹果开发iOS地图应用
新浪科技讯 北京时间3月26日上午消息,苹果最新的招聘信息显示,苹果仍在继续开发该公司自己的移动地图服务,这一地图服务将区别于谷歌地图. 招聘信息显示,苹果总部招聘一名iOS地图应用开发者.这名开发者 ...
最新文章
- python默认数据类型转换_Python 数据类型转换
- J-LINK7 固件修复
- sonyflake.go
- 2k11补丁php,【西乙】西班牙人4比0 武磊替补出场险造点球
- Java日期格式转换
- R语言-异常数据处理3
- linux中如何记录时间
- java里面的内存机制_Stack vs. Heap:了解 Java 的内存分配机制
- php 转义反绡线,PHP汉字转拼音
- Making Sense of all these Crazy Web Service Standards
- VBS 脚本控制键盘
- 云原生时代,OAM模型加持下的应用交付与管理实践
- 计算机制工艺品的意义,wh9程序化模型编写、计算机制说明
- 欧文计算机科学排名,2020年加州大学欧文分校排名TFE Times美国最佳计算机科学硕士专业排名第36...
- 毕业论文word排版技巧
- 判断计算机硬件和网络故障,计算机硬件故障的识别与处理
- 高级技巧之vertical-align属性应用
- 很强大!低耦合高内聚的MCU实用软件框架
- centos7安装php7
- 大数据技术之Hadoop(Hadoop企业优化常见错误及解决方案)
热门文章
- Python扫码登录保存和验证cookies值——微信公众号篇(四)
- 苹果电脑怎么分屏?为您带来Mac分屏小技巧,让你办公更高效!
- Photoshop CS2 视频教程-PS加深工具(转)
- MATLAB串并转换模块,simulink串并转换
- 计算机等级考试谁批阅卷子,考试不知道的内幕,卷子到底在哪里批改?
- 学计算机挺好的就是头冷表情包,c语言挺好的,就是头有点冷表情包 - c语言挺好的,就是头有点冷微信表情包 - c语言挺好的,就是头有点冷QQ表情包 - 发表情 fabiaoqing.com...
- Rasa Core Policy策略组件解析
- Linux下的du -sh命令
- js 动态创建table标签下的tr标签
- notepad卡顿_轻量级的文本编辑器之Notepad