iOS百度地图问题总结(三)


关于导入百度地图SDK出现的问题(一)


原帖地址

1.MKAnnotationView和MKPinAnnotationView的区别.

如果想创建以静态图片作为大头针图片的话,可以通过创建MKAnnotationView是实例。如果想使用apple自带的大头针则创建MKPinAnnotationView.


2.Undefined symbols for architecture x86_64

错误原因:一般是指用到的第三方框架不支持64位手机

无标题1.png

将5改为$(ARCHS_STANDARD)_32_BIT


3. Terminating app due to uncaught exception ‘NSInvalidUnarchiveOperationException’,reason ‘Could not instantiate class named MKMapView’ 解决办法:如果sotoryboard中用到了地图,必须手动导入框架MapKit.framework.


4.使用百度地图api不显示当前位置的蓝点,如下代码

- (void)viewDidLoad { 
[super viewDidLoad]; 
_locService = [[BMKLocationService alloc] init]; _locService.delegate = self; 
_mapView = [[BMKMapView alloc] initWithFrame:[UIScreen mainScreen].bounds];
 if ([[UIDevice currentDevice].systemVersion doubleValue] >= 8.0) { 
// 主动请求权限
 self.mgr = [[CLLocationManager alloc] init]; 
self.mgr.delegate = self;
 [self.mgr requestAlwaysAuthorization];
 } 
[self.view addSubview:_mapView];
 [_locService startUserLocationService]; _mapView.userTrackingMode = BMKUserTrackingModeFollow;//设置定位的状态 
_mapView.showsUserLocation = YES;//显示定位图层
}
/** 
*用户位置更新后,会调用此函数 
*@param userLocation 新的用户位置 
*/
- (void)didUpdateBMKUserLocation:(BMKUserLocation *)userLocation{
 [_mapView updateLocationData:userLocation]; 
if (userLocation != nil) { 
NSLog(@"%f %f", userLocation.location.coordinate.latitude, userLocation.location.coordinate.longitude); 
}
}

5.百度地图BMKMapViewDelegate的-mapView:viewForAnnotation:函数不调用

解决办法:看看mapview的delegate是不是在viewWillAppear里面 如果是的话,viewDidLoad肯定是先于viewWillAppear被叫的,所以不会调用。

下面是 demo 下载地址:

github 下载地址

优质内容筛选与推荐>>
1、如何理解java的类加载器ClassLoader
2、Centos7.6上利用docker搭建Jenkins来自动化部署Django项目
3、openvpn 安卓客户端升级后报错,修改topology
4、db2 error
5、js漂浮广告实现代码(合集经典)


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号