BaiduMap_IOSSDK_v7.1.0_Docs 7.1.0

构造函数 | 类方法 | 属性 | 所有成员列表
BMKCycleNavigationManager类 参考

`#import <BMKCycleNavigationManager.h>`

类 BMKCycleNavigationManager 继承关系图:

## 构造函数
(BOOL) | - initNaviEngine:option:
(BOOL) | - initNaviEngine:options:
(void) | - routePlanWithParams:
(NSArray< BMKPolyline * > *_Nullable) | - displayRoutePlanResult:
(void) | - naviCalcRoute:
(NSArray< BMKWalkCycleRouteResult * > *_Nullable) | - getCycleNaviMulRouteInfos
(BMKWalkCycleRouteResult *_Nullable) | - getCycleNaviRouteInfo
(BMKWalkCycleNavigationData *_Nullable) | - getCycleNavigationLocationData
(BMKWalkCycleTrafficLightData *) | - getTrafficLightData
| 获取红路灯倒计时信息，用于自定义红路灯倒计时,在onTrafficLightDataUpdate回调中调用 since 6.6.3 更多...
("已废弃since 6.5.4，内部无实现，请使用- (BOOL) | - startCycleNaviWithParentController:
(BOOL) | - startCycleNaviWithParentController:isPush:
(void) | - exitCycleNomalNavi
| 退出骑行专业导航，等同于点击骑行专业导航退出按钮,since 6.5.8 更多...
(BOOL) | - startCycleLightNaviWithParentView:
(void) | - exitCycleLightNavi
| 退出轻导航，当退出轻导航页面时，需要退出轻导航，since 6.5.8 更多...
(BOOL) | - switchToCycleNomalNaviWithParentController:isPush:
| 轻导航切换到专业导航,since 6.5.8 更多...
(void) | - returnToViewAll
| 轻导航一键恢复全览,since 6.5.8 更多...
(void) | - enterCarFreeSatus
| 进入自由态，如等待乘客阶段,since 6.5.8 更多...
(void) | - leaveCarFreeSatus
| 离开自由态,since 6.5.8 更多...
(BMKMapView *_Nullable) | - getNaviMap
(BMKBackgroundNavigationView *) | - getBackgroundNavigationView
(BMKBackgroundNavigationView *) | - getBackgroundNavigationViewWithTag:
(UIView *_Nullable) | - getCustomNaviView
| 获取导航自定义图层View,since 6.5.8 更多...
(void) | - pause
(void) | - resume
(void) | - stop
(void) | - showsBackgroundLocationIndicator:
(void) | - triggerLocation:
| 外部传入定位坐标数据 更多...
(void) | - triggerHeading:
| 外部传入定位heading数据 更多...
(void) | - startSimulateNavi
| 开始模拟导航 更多...
(void) | - stopSimulateNavi
| 结束模拟导航 更多...
(void) | - setSimulateNaviSpeed:
| 设置模拟导航速度,速度范围0～20m/s,默认1m/s 更多...
(void) | - setNaviDrawElementsShow:elements:
(void) | - updateNaviDrawItemDisplayOption:

## 类方法
(instancetype) | + sharedManager
(void) | + destroy

## 属性
BMKCycleNavigationMode | cycleNaviMode
| 骑行导航模式，目前支持普通骑行导航、骑行轻导航 更多...
UIEdgeInsets | zoomToSpanInsets
| 路线全览区域在mapview上的insets，since 6.5.8 更多...
BMKNaviMapRotateMode | naviMapRotateMode
| 设置导航地图旋转模式，默认：BMKNaviMapRotateModeRoute 路线朝上，since 6.6.2 更多...
BMKNaviMapOverlookingMode | naviMapOverlookingMode
| 设置导航地图俯仰视角模式，默认：BMKNaviMapOverlookingMode2D 2d视角，since 6.6.2 更多...
BOOL | naviMapViewAllStatus
| 设置导航是否全览状态，默认：NO 导航态，，since 6.6.2 更多...
BOOL | showRedGreenLight
| 设置导航是否显示红路灯倒计时，引擎初始化成功后调用，默认：NO，有高级权限时默认YES，since 6.6.2 更多...
BOOL | enableMultiRoute
| 设置是否支持多路线规划选择，可在routePlanDelegate回调中处理多路线并进行绘制选择。默认NO 更多...
CGFloat | bottomButtonHeight
CGPoint | carPositionOffset
| 小车XY偏移量,默认无效值(MAXFLOAT, MAXFLOAT），初始化引擎后设置，since 6.6.4 更多...
float | defaultNaviMapLevel
| 设置默认比例尺，默认：19,范围：4～22，since 6.6.4 更多...
BMKWalkCycleNaviSettingManager * | naviSettingManager
| 导航设置选项,初始化导航后设置 更多...
id< BMKWalkCycleRoutePlanDelegate > | routePlanDelegate
id< BMKWalkNaviCalcRouteDelegate > | calcRouteDelegate
id< BMKWalkCycleManagerDelegate > | managerDelegate
id< BMKWalkCycleRouteGuidanceDelegate > | routeGuidanceDelegate
id< BMKWalkCycleTTSPlayerDelegate > | ttsPlayerDelegate
id< BMKWalkCycleLocationServiceDelegate > | locationAuthorizationDelegate
BOOL | isSupportExternalTriggerLocation
BOOL | supportHeading
| 导航时是否支持手机传感器方向信息，默认YES 更多...
BOOL | ttsPlayerEnable
| 语音播报是否可用，默认YES，集成TTS SDK后即可正常播报 更多...

## 详细描述

骑行导航控制器类

## 函数文档

## ◆ destroy

+ (void) destroy |  |  |

销毁单例

## ◆ displayRoutePlanResult:

- (NSArray<BMKPolyline *> *_Nullable) displayRoutePlanResult: |  | (BMKMapView *) | mapview |

展示骑行多路线 since 6.6.2

参数

  mapview | 展示路线的mapView

返回
  obj 路线BMKPolyline

## ◆ enterCarFreeSatus

- (void) enterCarFreeSatus |  |  |

进入自由态，如等待乘客阶段,since 6.5.8

## ◆ exitCycleLightNavi

- (void) exitCycleLightNavi |  |  |

退出轻导航，当退出轻导航页面时，需要退出轻导航，since 6.5.8

## ◆ exitCycleNomalNavi

- (void) exitCycleNomalNavi |  |  |

退出骑行专业导航，等同于点击骑行专业导航退出按钮,since 6.5.8

## ◆ getBackgroundNavigationView

- (BMKBackgroundNavigationView *) getBackgroundNavigationView |  |  |

获取骑行后台导航视图对象

## ◆ getBackgroundNavigationViewWithTag:

- (BMKBackgroundNavigationView *) getBackgroundNavigationViewWithTag: |  | (NSString *) | tag |

根据tag获取骑行后台导航视图对象

## ◆ getCustomNaviView

- (UIView *_Nullable) getCustomNaviView |  |  |

获取导航自定义图层View,since 6.5.8

## ◆ getCycleNavigationLocationData

- (BMKWalkCycleNavigationData *_Nullable) getCycleNavigationLocationData |  |  |

获取导航过程中的位置点数据 since 6.6.2 需要在导航过程中调用，否则会为nil

## ◆ getCycleNaviMulRouteInfos

- (NSArray<BMKWalkCycleRouteResult *> *_Nullable) getCycleNaviMulRouteInfos |  |  |

获取骑行导航多路线规划信息 since 6.6.2 需要在算路规划成功(-onRoutePlanResult: naviType:)后获取，否则会为nil

## ◆ getCycleNaviRouteInfo

- (BMKWalkCycleRouteResult *_Nullable) getCycleNaviRouteInfo |  |  |

获取导航算路路线信息 since 6.6.2 需要在引擎算路成功(-onNaviCalcRouteResult: naviType:)和偏航算路成功(-onReRouteComplete:)后获取，否则会为nil

## ◆ getNaviMap

- (BMKMapView *_Nullable) getNaviMap |  |  |

获取骑行导航底图对象

## ◆ getTrafficLightData

- (BMKWalkCycleTrafficLightData *) getTrafficLightData |  |  |

获取红路灯倒计时信息，用于自定义红路灯倒计时,在onTrafficLightDataUpdate回调中调用 since 6.6.3

## ◆ initNaviEngine:option:

- (BOOL) initNaviEngine: |  | (UIViewController *_Nullable) | controller
option: |  | (BMKWalkCycleNavigationDisplayOption *) | option

初始化引擎

参数

  controller | 目的导航控制器
  option | 设置导航定制化参数。

返回
  引擎初始化结果

## ◆ initNaviEngine:options:

- (BOOL) initNaviEngine: |  | (UIViewController *_Nullable) | controller
options: |  | (BMKWalkCycleNavigationOptions *) | options

初始化引擎 since 6.6.2

参数

  controller | 导航页面，由开发者提供。
  options | 导航相关可选配置参数。

返回
  引擎初始化结果。

## ◆ leaveCarFreeSatus

- (void) leaveCarFreeSatus |  |  |

离开自由态,since 6.5.8

## ◆ naviCalcRoute:

- (void) naviCalcRoute: |  | (NSInteger) | routeIndex |

引擎算路接口，用于多路线选路进行导航 since 6.6.2

参数

  routeIndex | 路线索引

## ◆ pause

- (void) pause |  |  |

导航过程生命周期函数, 暂停导航

## ◆ resume

- (void) resume |  |  |

导航过程生命周期函数, 恢复导航

## ◆ returnToViewAll

- (void) returnToViewAll |  |  |

轻导航一键恢复全览,since 6.5.8

## ◆ routePlanWithParams:

- (void) routePlanWithParams: |  | (BMKCycleNaviLaunchParam *) | parameter |

发起算路

参数

  parameter | 骑行导航起终点参数类

## ◆ setNaviDrawElementsShow:elements:

- (void) setNaviDrawElementsShow: |  | (BOOL) | show
elements: |  | (NSArray *) | elements

导航元素显示控制，包括：引导红线，红绿灯🚥标签，红绿灯倒计时气泡，路名气泡，交通设施标签，交通设施气泡，里程碑标签等

- Parameters:
  - show: YES：显示；NO：隐藏
  - elements: 显示/隐藏的元素,可支持元素类型参考：BMKNaviDrawElementType 如：@[@(BMKNaviDrawElementTypeRedLine), @(BMKNaviDrawElementTypeTrafficLight), @(BMKNaviDrawElementTypeTrafficLightPop)]

## ◆ setSimulateNaviSpeed:

- (void) setSimulateNaviSpeed: |  | (int) | speed |

设置模拟导航速度,速度范围0～20m/s,默认1m/s

## ◆ sharedManager

+ (instancetype) sharedManager |  |  |

单例全局访问点

返回
  BMKCycleNavigationManager单例对象

## ◆ showsBackgroundLocationIndicator:

- (void) showsBackgroundLocationIndicator: |  | (BOOL) | show |

设置是否显示定位指示蓝条

参数

  show | YES:显示（进入后台时保留被授予的临时访问权限） NO：不显示

## ◆ startCycleLightNaviWithParentView:

- (BOOL) startCycleLightNaviWithParentView: |  | (UIView *) | parentView |

导航过程生命周期函数, 开始轻导航,since 6.5.8

参数

  parentView | 放置轻导航MapView的父view，用于展示轻导航路线

## ◆ startCycleNaviWithParentController:

- ("已废弃since 6.5.4，内部无实现，请使用- (BOOL) startCycleNaviWithParentController: |  | (id) | isPush |

导航过程生命周期函数, 开始导航

返回
  开始导航结果

## ◆ startCycleNaviWithParentController:isPush:

- (BOOL) startCycleNaviWithParentController: |  | (UIViewController *_Nullable) | controller
isPush: |  | (BOOL) | isPush

导航过程生命周期函数, 开始导航,since 6.5.2 @controller 父controller，用于push或present @isPush 是否Push出新页面，YES：push；NO：present

返回
  开始导航结果

## ◆ startSimulateNavi

- (void) startSimulateNavi |  |  |

开始模拟导航

## ◆ stop

- (void) stop |  |  |

导航过程生命周期函数, 结束导航

## ◆ stopSimulateNavi

- (void) stopSimulateNavi |  |  |

结束模拟导航

## ◆ switchToCycleNomalNaviWithParentController:isPush:

- (BOOL) switchToCycleNomalNaviWithParentController: |  | (UIViewController *) | controller
isPush: |  | (BOOL) | isPush

轻导航切换到专业导航,since 6.5.8

## ◆ triggerHeading:

- (void) triggerHeading: |  | (CLHeading *) | heading |

外部传入定位heading数据

## ◆ triggerLocation:

- (void) triggerLocation: |  | (BMKUserLocation *) | location |

外部传入定位坐标数据

## ◆ updateNaviDrawItemDisplayOption:

- (void) updateNaviDrawItemDisplayOption: |  | (BMKWalkCycleNaviDrawItemDisplayOption *) | dispalyOption |

更新导航元素自定义样式

- Parameters:
  - dispalyOption: 自定义主导航实例元素自定义样式（这里自定义多实例的元素样式不会生效）

## 属性说明

## ◆ bottomButtonHeight

- (CGFloat) bottomButtonHeight
| readwritenonatomicassign

底部需要预留高度，用于填充自身控件,默认0

## ◆ calcRouteDelegate

- (id<BMKWalkNaviCalcRouteDelegate>) calcRouteDelegate
| readwritenonatomicweak

算路代理回调，成功时即可调用startCycleNaviWithParentController开始导航

## ◆ carPositionOffset

- (CGPoint) carPositionOffset
| readwritenonatomicassign

小车XY偏移量,默认无效值(MAXFLOAT, MAXFLOAT），初始化引擎后设置，since 6.6.4

## ◆ cycleNaviMode

- (BMKCycleNavigationMode) cycleNaviMode
| readwritenonatomicassign

骑行导航模式，目前支持普通骑行导航、骑行轻导航

## ◆ defaultNaviMapLevel

- (float) defaultNaviMapLevel
| readwritenonatomicassign

设置默认比例尺，默认：19,范围：4～22，since 6.6.4

## ◆ enableMultiRoute

- (BOOL) enableMultiRoute
| readwritenonatomicassign

设置是否支持多路线规划选择，可在routePlanDelegate回调中处理多路线并进行绘制选择。默认NO

## ◆ isSupportExternalTriggerLocation

- (BOOL) isSupportExternalTriggerLocation
| readwritenonatomicassign

是否支外部传入位置，默认NO 配合triggerLocation和triggerHeading接口，实现仅外部传入位置点对导航生效，避免内部系统定位对位置点影响 可用于模拟导航

## ◆ locationAuthorizationDelegate

- (id<BMKWalkCycleLocationServiceDelegate>) locationAuthorizationDelegate
| readwritenonatomicweak

步骑行导航定位权限授权代理，开发者在调用startWalkNavi前主动申请相关定位权限

## ◆ managerDelegate

- (id<BMKWalkCycleManagerDelegate>) managerDelegate
| readwritenonatomicweak

导航管理回调

## ◆ naviMapOverlookingMode

- (BMKNaviMapOverlookingMode) naviMapOverlookingMode
| readwritenonatomicassign

设置导航地图俯仰视角模式，默认：BMKNaviMapOverlookingMode2D 2d视角，since 6.6.2

## ◆ naviMapRotateMode

- (BMKNaviMapRotateMode) naviMapRotateMode
| readwritenonatomicassign

设置导航地图旋转模式，默认：BMKNaviMapRotateModeRoute 路线朝上，since 6.6.2

## ◆ naviMapViewAllStatus

- (BOOL) naviMapViewAllStatus
| readwritenonatomicassign

设置导航是否全览状态，默认：NO 导航态，，since 6.6.2

## ◆ naviSettingManager

- (BMKWalkCycleNaviSettingManager*) naviSettingManager
| readwritenonatomicstrong

导航设置选项,初始化导航后设置

## ◆ routeGuidanceDelegate

- (id<BMKWalkCycleRouteGuidanceDelegate>) routeGuidanceDelegate
| readwritenonatomicweak

导航状态信息回调

## ◆ routePlanDelegate

- (id<BMKWalkCycleRoutePlanDelegate>) routePlanDelegate
| readwritenonatomicweak

多路线规划代理回调

## ◆ showRedGreenLight

- (BOOL) showRedGreenLight
| readwritenonatomicassign

设置导航是否显示红路灯倒计时，引擎初始化成功后调用，默认：NO，有高级权限时默认YES，since 6.6.2

## ◆ supportHeading

- (BOOL) supportHeading
| readwritenonatomicassign

导航时是否支持手机传感器方向信息，默认YES

## ◆ ttsPlayerDelegate

- (id<BMKWalkCycleTTSPlayerDelegate>) ttsPlayerDelegate
| readwritenonatomicweak

语言播报文本回调

## ◆ ttsPlayerEnable

- (BOOL) ttsPlayerEnable
| readwritenonatomicassign

语音播报是否可用，默认YES，集成TTS SDK后即可正常播报

## ◆ zoomToSpanInsets

- (UIEdgeInsets) zoomToSpanInsets
| readwritenonatomicassign

路线全览区域在mapview上的insets，since 6.5.8

该类的文档由以下文件生成:

- BaiduMapAPI_WalkNavi.framework/Headers/BMKCycleNavigationManager.h