SuggestionSearch mSuggestionSearch;
/**
* 模糊搜索
*
* @param keyword 关键字
*/
private void suggestSearch(String keyword) {
mSuggestionSearch = SuggestionSearch.newInstance();
// tv=(TextView) findViewById(R.id.editText1);
mSuggestionSearch.setOnGetSuggestionResultListener(listener);
mSuggestionSearch.requestSuggestion((new SuggestionSearchOption())
.keyword(keyword)
.city("苏州"));
}
/**
* 模糊搜索监听
*/
OnGetSuggestionResultListener listener = new OnGetSuggestionResultListener(){
public void onGetSuggestionResult(SuggestionResult res) {
if (res == null || res.getAllSuggestions() == null) {
return;
//未找到相关结果
} else {
ArrayList<LocationInfo> locationInfos = new ArrayList<>();
List<SuggestionResult.SuggestionInfo>resl = res.getAllSuggestions();
for (int i = 0; i <resl.size(); i++) {
Log.i("result: ", "city" + resl.get(i).city + " dis " +resl.get(i).district+ "key " + resl.get(i).key);
LocationInfo info = new LocationInfo();
info.setAddress(resl.get(i).city + " -- " +resl.get(i).district+ "-- " + resl.get(i).key);
info.setLatitude(resl.get(i).pt.latitude);
info.setLongtitu(resl.get(i).pt.longitude);
locationInfos.add(info);
}
showSearchResultDialog(locationInfos);
}
//获取在线建议检索结果
}
};
@Override
protected void onDestroy() {
super.onDestroy();
//在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理
mapView.onDestroy();
mapView = null;
// 关闭定位图层
baiduMap.setMyLocationEnabled(false);
//关闭模糊搜索
mSuggestionSearch.destroy();
}