{"version":"0.1.0","code":"0000","result":true,"message":"处理成功","errdetail":"","timestamp":1671516311232,"data":{"id":71712009,"title":"2.5.4.6 图面POI显隐","slug":"hgidfi","format":"lake","bookId":26046811,"body":null,"body_draft":null,"body_html":"
本章节是针对地图上所有POI进行显隐控制,若要对图面POI分类进行显隐控制,可参考文档:
图面POI大致分为两类:纯粹图标 和 图标与文字;关闭POI有些图标文字会隐藏,但有些纯文字不属于POI依然会显示。
关闭POI标注 示例①② | |
开启POI标注 示例①② | |
无
int com.autonavi.gbl.map.model.MapViewStateType.MAP_VIEWSTATE_IS_POI_ON = 28
final int com.autonavi.gbl.map.model.MapBusinessDataType.MAP_BUSINESSDATA_FORCE_NAVI_LABEL = 66
区别在于:
1)MAP_VIEWSTATE_IS_POI_ON 控制POI是否绘制。默认开启。
2)MAP_BUSINESSDATA_FORCE_NAVI_LABEL 控制POI强制刷新帧数。默认无强制刷新逻辑。
巡航或导航场景下,当地图中心跟随车标持续运动时,如果车持续前进,存在POI不显示现象(因为POI没更新)
需要HMI主动调用强制刷新才能显示正常
OperatorBusiness.setLabelVisable(boolean enable)
等价于 OperatorBusiness.setMapViewState(MAP_VIEWSTATE_IS_POI_ON, enable)
OperatorBusiness.setMapViewState(MAP_VIEWSTATE_IS_POI_ON, boolean enable)
void com.autonavi.gbl.map.MapView.setMapNeedForceDrawLabel(int refreshRate)
等价于OperatorBusiness.setMapBusinessDataPara(MAP_BUSINESSDATA_FORCE_NAVI_LABEL, MapParameter parameter) 其中 msgParam.value1 = 1; msgParam.value2 = refreshRate;
OperatorBusiness.setMapBusinessDataPara(MAP_BUSINESSDATA_FORCE_NAVI_LABEL, MapParameter parameter )
msgParam.value1 为开关
msgParam.value2 为强制刷新帧数
说明:函数详情,请复制函数名称到在线API搜索
//创建mapview实例\n...\n//设置POI标注\nmapView.getOperatorBusiness()\n .setMapViewState(MapViewStateType.MAP_VIEWSTATE_IS_POI_ON, true); //开启POI标注\nmapView.getOperatorBusiness()\n .setMapViewState(MapViewStateType.MAP_VIEWSTATE_IS_POI_ON, false);//关闭POI标注\n//是否开启导航标注\nMapParameter mapParameter = new MapParameter();\nmapParameter.value1 = 1; //开启导航标注\nmapParameter.value2 = 15;//设置帧率\nmapParameter.value3 = 0;//按上层设置的帧率刷新\nmapParameter.value4 = 0;//保留\nmapView.getOperatorBusiness().setMapBusinessDataPara(MapBusinessDataType.MAP_BUSINESSDATA_FORCE_NAVI_LABEL,\n mapParameter);\n\nmapParameter.value1 = 0; //关闭导航标注\nmapView.getOperatorBusiness().setMapBusinessDataPara(MapBusinessDataType.MAP_BUSINESSDATA_FORCE_NAVI_LABEL,\n mapParameter);
//创建mapview实例\n...\n//设置POI标注\nmapView.getOperatorBusiness().setLabelVisable(true); //开启POI标注\nmapView.getOperatorBusiness().setLabelVisable(false); //关闭POI标注