地图显示 最后更新时间: 2021年01月22日
初始化地图模块,完成室内地图的加载。
开发者Key
1)函数体:
@property(nonatomic, strong)NSString* key;
2)说明:
请从高德地图开放平台官网申请Key,并在程序中使用正确的Key。 如果Key设置错误,将无法访问LBS服务器下载室内地图数据。获取密钥
建筑物ID
1)函数体:
@property(nonatomic, strong)NSString* buildingId;
2)说明:
- 请在线申请建筑物数据,建筑物数据申请详情请参阅:申请室内地图数据
- 设置当前建筑物是异步操作,也就是说设置完成后立即获取,可能不是刚刚设置的新值。
- 设置也有可能失败,失败后当前建筑物Id仍保持设置之前的值,在 OIMMapView 中使用会有相关事件。
3)示例代码:
//当前建筑物
NSString* buildingId = self.imMapView.buildingId;
buildingId = @"请输入建筑物ID";
self.imMapView.buildingId = buildingId;
//赋值后立即判断(如[self.imMapView.buildingId isEqualToString:buildingId]),结果可能为NO
楼层显示
1)函数体:
@property(nonatomic)int floorNo;
2)说明:
- 设置当前楼层同样是异步操作,也有可能失败,在 OIMMapView 中使用会有相关事件。
- 设置floorNo为0,会加载当前建筑物的默认楼层,设置成功后floorNo不等于0。
3)示例代码:
//当前楼层
int floorNo = self.imMapView.floorNo;
floorNo = 2;
self.imMapView.floorNo = floorNo;
设置建筑物及楼层
1)函数体:
-(void)setBuildingId:(NSString *)buildingId floorNo:(int)floorNo;
2)参数说明:
参数 | 类型 | 说明 |
---|---|---|
buildingId | NSString* | 室内建筑物Id |
floorNo | int | 楼层 |
3)说明:
- 请在线申请建筑物数据,建筑物数据申请详情请参阅:申请室内地图数据
- 该接口同时设置建筑物和楼层,[self.imMapView setBuildingId:@“请输入建筑物ID” floorNo:n]; 与self.imMapView.buildingId = @“请输入建筑物ID”;self.imMapView.floorNo = n;不完全等价,前者直接加载,后者先加载建筑物的默认楼层,再切换到指定楼层,除非n即是默认楼层。
4)示例代码:
//当前建筑物
NSString* buildingId = @"请输入建筑物ID";
int floorNo = 2;
[self.imMapView setBuildingId:buildingId floorNo:floorNo]; //直接加载floorNo这一层
//与下面的代码不完全等价
self.imMapView.buildingId = buildingId; //这一步会加载默认楼层
self.imMapView.floorNo = floorNo; //如果默认楼层不是floorNo,再切换到floorNo这一层
加载室内地图
开始加载室内地图
1)函数体:
-(void)mapView:(OIMMapView*)mapView willStartLoadingMap:(NSString*)buildingId floorNo:(int)floorNo;
2)参数说明:
参数 | 类型 | 说明 |
---|---|---|
mapView | OIMMapView* | 室内地图对象 |
buildingId | NSString* | 将要加载的建筑物Id |
floorNo | int | 将要加载的楼层 |
地图加载完成事件
1)函数体:
-(void)mapView:(OIMMapView*)mapView didFinishLoadingMap:(NSString*)buildingId floorNo:(int)floorNo;;
2)参数说明:
参数 | 类型 | 说明 |
---|---|---|
mapView | OIMMapView** | 室内地图对象 |
buildingId | NSString* | 将要加载的建筑物Id |
floorNo | int | 将要加载的楼层 |
地图加载失败事件
1)函数体:
-(void)mapView:(OIMMapView*)mapView didFailLoadingMap:(NSString*)buildingId floorNo:(int)floorNo withError:(NSError *)error;
2)参数说明:
参数 | 类型 | 说明 |
---|---|---|
mapView | OIMMapView** | 室内地图对象 |
buildingId | NSString* | 加载失败的建筑物Id |
floorNo | int | 加载失败的楼层 |
error | NSError* | 加载失败的错误信息 |
切换楼层
开始切换楼层事件
1)函数体:
-(void)mapView:(OIMMapView*)mapView willStartLoadingFloor:(NSString*)buildingId floorNo:(int)floorNo;
2)参数说明:
参数 | 类型 | 说明 |
---|---|---|
mapView | OIMMapView* | 室内地图对象 |
buildingId | NSString* | 将要加载的建筑物Id |
floorNo | int | 将要加载的楼层 |
切换楼层完成事件
1)函数体:
-(void)mapView:(OIMMapView*)mapView didFinishLoadingFloor:(NSString*)buildingId floorNo:(int)floorNo;
2)参数说明:
参数 | 类型 | 说明 |
---|---|---|
mapView | OIMMapView** | 室内地图对象 |
buildingId | NSString* | 加载完成的建筑物Id |
floorNo | int | 加载完成的楼层 |
切换楼层失败事件
1)函数体:
-(void)mapView:(OIMMapView*)mapView didFailLoadingFloor:(NSString*)buildingId floorNo:(int)floorNo withError:(NSError *)error;
2)参数说明:
参数 | 类型 | 说明 |
---|---|---|
mapView | OIMMapView** | 室内地图对象 |
buildingId | NSString* | 加载失败的建筑物Id |
floorNo | int | 加载失败的楼层 |
error | NSError* | 加载失败的错误信息 |