全部服务产品
开发者频道
定价
登录
路线结果页
下载开发文档

路线结果页依赖App的页面生命周期,开发时需要通过BaiduNaviManagerFactory.getRouteResultManager()获取到IBNRouteResultManager,将IBNRouteResultManager对应页面的生命周期挂接到页面的对应生命周期方法即可,App页面既可以是Activity,也可以是Fragment。

public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
BaiduNaviManagerFactory.getRouteResultManager().onCreate(getActivity());
}

IBNRouteResultManager中对应的方法如下:

/**
* 生命周期onCreate,在{@linkplain Activity#onCreate()}} 或者 {@linkplain Fragment#onCreateView()}} 中调用
*/
void onCreate(Context context);
/**
* 生命周期onResume,在{@linkplain Activity#onResume()}} 或者 {@linkplain Fragment#onResume()}}中调用
*/
void onResume();
/**
* 生命周期onPause,在{@linkplain Activity#onPause()}} 或者 {@linkplain Fragment#onPause()}} 中调用
*/
void onPause();
/**
* 生命周期onDestroy,在{@linkplain Activity#onDestroy()}} 或者 {@linkplain Fragment#onDestroy()}} 中调用
*/
void onDestroy();
/**
* 为小黄条增加一个容器
*
* @param viewGroup 添加小黄条的容器
*/
void addYellowTipsToContainer(ViewGroup viewGroup);
/**
* 移出小黄条
*/
void removeYellowTipsFromContainer();
/**
* 根据路线索引选择路线
*/
void selectRoute(int index);
/**
* 全览当前路线
*/
void fullView();
/**
* 根据传入的坐标点全览图区,传入的坐标点不得小于2个
*/
void fullViewByNode(List<BNRoutePlanNode> nodes);
/**
* 开启专业导航
*
* @return 返回true,代表可以跳转至专业导航
*/
boolean startNavi();
/**
* 获取3Tab信息和路线详情
*/
@Deprecated
Bundle getRouteInfo();
/**
* 获取3Tab信息和路线详情
* @return
*/
@Deprecated
BNRoutePlanInfos getRoutePlanInfo();
/**
* 获取是否是长途
*/
boolean isLongDistance();
/**
* 处理长途途径市按钮的点击
*
* @param checked 按钮是否选中
*/
void handleCityClick(boolean checked);
/**
* 处理长途途径路按钮的点击
*
* @param checked 按钮是否选中
*/
void handleRouteClick(boolean checked);
/**
* 处理长途途径服务区按钮的点击
*
* @param checked 按钮是否选中
*/
void handleServiceClick(boolean checked);
/**
* 处理长途检查站按钮的点击
*
* @param checked 按钮是否选中
*/
void handleCheckpointClick(boolean checked);
/**
* 处理长途天气按钮的点击
*
* @param checked 按钮是否选中
*/
void handleWeatherClick(boolean checked);
/**
* 路线点击事件监听
*/
void setRouteClickedListener(IRouteClickedListener listener);
/**
* 途经点点击事件,监听事件该可自定义途径点气泡样式
* 注:如果监听了该事件,SDK内置途经点气泡不会展示
*/
void setOnThroughNodeClickListener(IThroughNodeClickedListener listener);
/**
* 内置长途路线气泡增删途径点算路事件监听
*/
void setCalcRouteByViaListener(ICalcRouteByViaListener listener);
/**
* 沿途搜
* @param types 搜索类型 {@link NearbySearchKeyword}
* @param listener
*/
void poiSearch(ArrayList<String> types, PoiSearchListener listener);

算路结果页算路事件监听:

BaiduNaviManagerFactory.getRouteResultManager().setCalcRouteByViaListener(
new IBNRouteResultManager.ICalcRouteByViaListener() {
@Override
public void onStart() {
}
@Override
public void onSuccess() {
}
@Override
public void onFailed(int errorCode) {
}
});

路线点击事件监听:

BaiduNaviManagerFactory.getRouteResultManager().setRouteClickedListener(
new IBNRouteResultManager.IRouteClickedListener() {
@Override
public void routeClicked(int index) {
BaiduNaviManagerFactory.getRouteResultManager().selectRoute(index);
switch (index) {
case 0:
// 路线0点击
break;
case 1:
// 路线1点击
break;
case 2:
// 路线2点击
break;
default:
break;
}
}
});

上一篇

摩托车路径规划

下一篇

算路准确性

本篇文章对您是否有帮助?