Android 使用百度LBS SDK(四)

来源:互联网 发布:淘宝小号供货商 编辑:程序博客网 时间:2024/06/06 00:57

1.设置路线规划策略


/** * activity - 建议是应用的主Activity *  * nodes - 传入的算路节点,顺序是起点、途经点、终点,其中途经点最多三个,参考 BNRoutePlanNode *  * preference - 算路偏好,参考BaiduNaviManager.RoutePlanPreference: * ----------------------------------------------------------- * 1-ROUTE_PLAN_MOD_RECOMMEND 推荐 *  * 2-ROUTE_PLAN_MOD_MIN_TIME 高速优先 *  * 4-ROUTE_PLAN_MOD_MIN_DIST 少走高速 *  * 8-ROUTE_PLAN_MOD_MIN_TOLL 少收费 *  * 16-ROUTE_PLAN_MOD_AVOID_TAFFICJAM 躲避拥堵 * ----------------------------------------------------------- *  * isGPSNav - true表示真实GPS导航,false表示模拟导航 *  * listener - 开始导航回调监听器,在该监听器里一般是进入导航过程页面 */int routePlanMode = preference.getInt(Constant.SPString.ROUTE_PLAN_PREF,RoutePlanPreference.ROUTE_PLAN_MOD_RECOMMEND);MyLog.v("[routeplanToNavi]routePlanMode:" + routePlanMode);BaiduNaviManager.getInstance().launchNavigator(this, list,routePlanMode, true, new DemoRoutePlanListener(sNode));


2.搜索框添加一键清除按钮

输入前:

输入后:

etHistoryWhere.addTextChangedListener(new TextWatcher() {@Overridepublic void onTextChanged(CharSequence s, int start, int before,int count) {}@Overridepublic void beforeTextChanged(CharSequence s, int start, int count,int after) {}@Overridepublic void afterTextChanged(Editable s) {int length = s.length();if (length > 0) {btnClearText.setVisibility(View.VISIBLE);} else {btnClearText.setVisibility(View.GONE);}}});

3.避免多次进入导航实例

在一次路线规划过程中,再次规划会导致进入导航界面2次,返回后会导致黑屏。

规避方式:






private void routeplanToNavi(CoordinateType coType, double startLatitude,double startLongitude, String startName, double endLatitude,double endLongitude, String endName) {audioRecordDialog.showLoadDialog();if (MyApplication.isRouteComputing) {String strWaitLastCompute = "请等待上次路线规划完成";Toast.makeText(getApplicationContext(), strWaitLastCompute,Toast.LENGTH_SHORT).show();startSpeak(strWaitLastCompute);} else {Toast.makeText(getApplicationContext(), "开始规划路线",Toast.LENGTH_SHORT).show();MyApplication.isRouteComputing = true;// ... ...}}




0 0
原创粉丝点击