路侧停车
本指南:展示路侧停车位并支持高亮与触摸。
功能介绍
OnStreetParkingController 用于在地图上展示 路侧停车位 数据,支持批量添加/移除、单条高亮与触摸交互。数据模型来自 com.telenav.sdk.map.content.model.OnStreetParkingLot。
典型流程:
- 通过
MapContentManager查询附近停车位数据。 - 调用
addOnStreetParking渲染到地图。 - 用户点击停车位 →
OnStreetParkingTouchListener回调 →highlightOnStreetParking高亮。
效果示意:

获取入口:
1 | |
核心接口一览
| 方法 | 说明 |
|---|---|
addOnStreetParking(lots) |
添加路侧停车数据 |
removeOnStreetParking(parkingIds) |
按 ID 移除 |
removeAllOnStreetParking() |
移除全部 |
highlightOnStreetParking(parkingId, isHighlighted) |
高亮 / 取消高亮(同时仅一条) |
接口详细说明
1. addOnStreetParking — 添加停车位
1 2 3 | |
| 参数 | 类型 | 说明 |
|---|---|---|
onStreetParkingLots |
List<OnStreetParkingLot> |
停车位数据列表,通常来自 MapContent 查询 |
查询数据(MapContentManager):
通过 MapContentManager.createOnStreetParkingQueryTask(location) 查询当前位置周边约 1km × 1km 范围内的停车位。需确保交通数据能力可用。
示例代码:
1 2 3 4 5 6 7 | |
2. removeOnStreetParking — 移除指定停车位
1 2 3 | |
| 参数 | 类型 | 说明 |
|---|---|---|
parkingIds |
List<String> |
要移除的停车位 ID 列表 |
示例代码:
1 | |
3. removeAllOnStreetParking — 移除全部
| 接口方法 | 说明 |
|---|---|
removeAllOnStreetParking() |
清除地图上所有路侧停车位 |
示例代码:
1 | |
4. highlightOnStreetParking — 高亮停车位
同一时间 仅允许一条 停车位处于高亮状态。
1 2 3 4 | |
| 参数 | 类型 | 说明 |
|---|---|---|
parkingId |
String |
停车位 ID |
isHighlighted |
Boolean |
true 高亮;false 取消高亮 |
示例代码:
1 2 | |
5. 触摸交互 — OnStreetParkingTouchListener
注册 setOnStreetParkingTouchListener 接收停车位点击事件。
1 | |
| 参数 | 类型 | 说明 |
|---|---|---|
touchedParkings |
List<OnStreetParkingLot> |
被点击的停车位集合 |
示例代码:
1 2 3 4 5 6 7 8 | |
详见 触摸与手势。
注意事项
OnStreetParkingController须在MapView.onReady之后使用。- 同一时间仅允许 一个 停车位高亮。
- 停车位数据由 MapContent 或业务服务提供,本控制器仅负责地图渲染与交互。
- 若使用 MapContent 查询,需确保交通数据能力可用。