随笔分类 - 05 地图
摘要:如何在某个程序里面判定当前应用程序的定位服务是否可用,其实没有什么简单的方法。这个[CLLocationManager locationServicesEnabled]检测的是整个iOS系统的位置服务开关,无法检测当前应用是否被关闭,只能通过CLLocationManagerDelegate的locationManager:didFailWithError:方法去检测:- (void)locationManager: (CLLocationManager *)managerdidFailWithError: (NSError *)error { NSString *errorSt...
阅读全文
摘要:方法: 再百度地图的委托方法 - (void)mapView:(BMKMapView *)mapView didUpdateUserLocation:(BMKUserLocation *)userLocation 中设置:[mapView setShowsUserLocation:NO];例子代码:- (void)viewDidLoad{ [super viewDidLoad]; configData = [NSUserDefaults standardUserDefaults]; //初始化对象 //启动BMKMapManager (加载百度地图前,必须...
阅读全文
摘要:1、用[_searchdrivingSearch:nilstartNode:start endCity:nilendNode:end]; 方法查询公交路线 返回错误码 1002013-05-22 23:46:47.264 Travel[938:907] 公交查询的城市是====济南2013-05-22 23:46:47.267 Travel[938:907] 公交路线起点坐标====36.708721,117.1251142013-05-22 23:46:47.269 Travel[938:907] 公交路线终点坐标====36.849457,117.3918612013-05-22 23:.
阅读全文
摘要:参考:http://www.2cto.com/kf/201207/138950.html 写的比较实在,可以看看初始化方法1: CLLocationCoordinate2D startPt = (CLLocationCoordinate2D){0, 0}; //纬度,经度 CLLocationCoordinate2D endPt = (CLLocationCoordinate2D){0, 0};初始化方法2:CLLocationCoordinate2D coords = CLLocationCoordinate2DMake(39.915352,116.397105);//纬度,经度...
阅读全文
摘要://百度地图删除地图上所有的标注和所有的覆盖物NSArray* array = [NSArrayarrayWithArray:_mapView.annotations];[_mapViewremoveAnnotations:array];array = [NSArrayarrayWithArray:_mapView.overlays];[_mapViewremoveOverlays:array];
阅读全文
摘要:/** 用户位置更新后,会调用此函数 @param mapView 地图View @param userLocation 新的用户位置 在实际使用中,只需要 [mapView setShowsUserLocation:YES]; mapView.delegate = self; 两句代码就可以启动下面的方法。疑问,为什么我的位置没有移动的情况下,这个方法循环被调用呢? */- (void)mapView:(BMKMapView *)mapView didUpdateUserLocation:(BMKUserLocation *)userLocation{ if (...
阅读全文
摘要:IBOutlet BMKMapView* _mapView;BMKSearch* _search;以上两个对象在初始化时,有先后顺序之分。必须先初始化_mapView 才能再初始化_search 。否则会报错。
阅读全文
摘要:在使用百度地图时,使用的时候下面一句报错了~BMKMapPoint *pionts = new BMKMapPoint[index];用下面这句也报错 delete []points;解决方案:将把文件后缀从m改成了mm。分析:变态的百度静态库中采用ObjectC++实现,以上两句时ObjectC++的特性。如果把文件后缀改为mm,则xcode会用ObjectC++的方式来编译文件。
阅读全文
摘要:经纬度在不同地区,每度距离差是不同的,如果假定地球是完美的球体(这样假设误差不是很大)的话,纬度为 B 的地区: 纬度变化一度,球面南北方向距离变化:πR/180 ........111.7km 经度变化一度,球面东西方向距离变化:πR/180*cosB ....111.7*cosB 比如北京 B = 40、cosB = 0.766,经度变化1度,则东西方向距离变化 85.567km深入 :http://blog.sina.com.cn/s/blog_3fb1591a0100fwcl.html
阅读全文
摘要:客户端上传当前地理位置(x.y),保存在服务端数据库中客户端根据地点向服务端查询下载自己周围XXX米的数据问题:这个XXX米如何计算?经纬度是(x,y)如果数据库中以这两个值来计算距离然后筛选的话,太不现实了 ,咋办 ?画圆啊,取近似值,例如,我们说的附近100米,是一个圆形的概念,但是在数据库中计算的时候我们可以计算纵横坐标在左右前后100米就OK了.这样一定会是一个正方形,不过这点误差一般不会有问题,因为经纬度本身就有误差啊!~这样就不用计算了,只要经纬度分别在正负100米之内就OK了啊(要换算成经纬度来计算的哦!~)地球上任两点间距离公式: 地球上任两点,其经度分别为A1、A2(E正,W
阅读全文
摘要:自定义百度地图气泡 http://www.cnblogs.com/jz1108/archive/2011/09/15/2152122.html
阅读全文
摘要:转自:http://blog.sina.com.cn/s/blog_63ced45101016nrt.html(1)编译正常,运行报 [UIDevice uniqueGlobalDeviceIdentifier]: unrecognized selector sent to此时需要 other linker flags 添加-all_load参数。具体:Project ->build settings ->linking->Other Linker flags(2)编译报 Undefined symbols for architecture armv7。请检查有没有添加Qua
阅读全文
摘要:O 需求将当前位置用大头针标注到百度地图上一 准备详见《01 如何将百度地图加入IOS应用程序?》注意,此应用程序运行环境是IOS DEVICE 。所以,相应的开发包一定要做好调整。二 编码(New标示本次新添加的代码;Delete表示本次需要删除的代码;Modify表示本次被修改的代码)1、在ViewController.h中修改代码如下1 #import <UIKit/UIKit.h>2 #import "BMapKit.h"3 @interface ViewController : UIViewController<BMKGeneralDelegat
阅读全文
摘要:O 需求将指定经纬度,显示在百度地图上。一 准备详见《01 如何将百度地图加入IOS应用程序?》二 编码(New标示本次新添加的代码;Delete表示本次需要删除的代码;Modify表示本次被修改的代码)1、在ViewController.mm中修改代码如下 1 - (void)viewDidLoad 2 { 3 …… 4 // 添加一个PointAnnotation 5 BMKPointAnnotation* annotation = [[BMKPointAnnotation alloc]init]; 6 CLLocationCoordinate2D coor;...
阅读全文
摘要:O 需求通过百度地图,获取用户当前位置的经纬度一 准备确保你已按照上篇《01 如何将百度地图加入IOS应用程序?》完成了相关功能。本篇将在上一篇的基础上进行修改。二 编码(New标示本次新添加的代码;Delete表示本次需要删除的代码;Modify表示本次被修改的代码)1、在ViewController.h中添加引入BMKMapViewDelegate的声明,如下1 @interface ViewController : UIViewController<……,BMKMapViewDelegate> //New2 {…… }在ViewController.mm中修改代码如下 1 -
阅读全文
摘要:O 需求将百度地图加入到IOS应用程序中一 准备1)到百度官网下载 iOS SDKv1.2.2 静态库。地址如下 http://openapi.baidu.com/map/sdkiosdev-download.htm2)将静态库引入你的工程,具体步骤如下:引入静态库文件百度MapAPI提供了模拟器和...
阅读全文