Android 路徑查詢具體實(shí)現(xiàn)
更新時(shí)間:2013年10月04日 16:49:51 作者:
可以通過(guò)RasterMap的getDirection()方法來(lái)查詢路徑,和查詢地址類似,路徑查詢的結(jié)果也是通過(guò)回調(diào)函數(shù)的方式來(lái)通知應(yīng)用程序的,下面的例子返回南京到北京的路徑
返回結(jié)果存放在MapDirection中,MapDirection包含了路徑的詳細(xì)信息,包括路徑的每個(gè)步驟,長(zhǎng)度,時(shí)間,方向等。
Java代碼:
packageeoe.demo;
importcom.mapdigit.gis.MapDirection;
importcom.mapdigit.gis.MapPoint;
importcom.mapdigit.gis.geometry.GeoLatLng;
importcom.mapdigit.gis.service.IRoutingListener;
importcom.pstreets.gisengine.R;
importcom.pstreets.gisengine.SharedMapInstance;
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuInflater;
importandroid.view.MenuItem;
publicclassMapRoutingextendsActivityimplementsIRoutingListener{
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
publicvoidonStart(){
super.onStart();
GeoLatLngcenter=newGeoLatLng(32.0616667,118.7777778);
SharedMapInstance.map.setCenter(center,15,
com.mapdigit.gis.raster.MapType.MICROSOFTCHINA);
SharedMapInstance.map.setRoutingListener(this);
}
@Override
publicbooleanonCreateOptionsMenu(Menumenu){
MenuInflaterinflater=getMenuInflater();
inflater.inflate(R.menu.maprouting_menu,menu);
returntrue;
}
@Override
publicbooleanonOptionsItemSelected(MenuItemitem){
//Handleitemselection
switch(item.getItemId()){
caseR.id.getdirection:
Stringname1="南京";
Stringname2="北京";
SharedMapInstance.map.getDirections("from:"+name1+"to:"
+name2);
returntrue;
default:
returnsuper.onOptionsItemSelected(item);
}
}
@Override
publicvoiddone(Stringquery,MapDirectionresult){
if(result!=null){
SharedMapInstance.map.setMapDirection(result);
SharedMapInstance.map.resize(result.getBound());
SharedMapInstance.map.zoomOut();
SharedMapInstance.map.zoomOut();
}
}
@Override
publicvoidreadProgress(intbytes,inttotal){
}
}
Java代碼:
復(fù)制代碼 代碼如下:
packageeoe.demo;
importcom.mapdigit.gis.MapDirection;
importcom.mapdigit.gis.MapPoint;
importcom.mapdigit.gis.geometry.GeoLatLng;
importcom.mapdigit.gis.service.IRoutingListener;
importcom.pstreets.gisengine.R;
importcom.pstreets.gisengine.SharedMapInstance;
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuInflater;
importandroid.view.MenuItem;
publicclassMapRoutingextendsActivityimplementsIRoutingListener{
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
publicvoidonStart(){
super.onStart();
GeoLatLngcenter=newGeoLatLng(32.0616667,118.7777778);
SharedMapInstance.map.setCenter(center,15,
com.mapdigit.gis.raster.MapType.MICROSOFTCHINA);
SharedMapInstance.map.setRoutingListener(this);
}
@Override
publicbooleanonCreateOptionsMenu(Menumenu){
MenuInflaterinflater=getMenuInflater();
inflater.inflate(R.menu.maprouting_menu,menu);
returntrue;
}
@Override
publicbooleanonOptionsItemSelected(MenuItemitem){
//Handleitemselection
switch(item.getItemId()){
caseR.id.getdirection:
Stringname1="南京";
Stringname2="北京";
SharedMapInstance.map.getDirections("from:"+name1+"to:"
+name2);
returntrue;
default:
returnsuper.onOptionsItemSelected(item);
}
}
@Override
publicvoiddone(Stringquery,MapDirectionresult){
if(result!=null){
SharedMapInstance.map.setMapDirection(result);
SharedMapInstance.map.resize(result.getBound());
SharedMapInstance.map.zoomOut();
SharedMapInstance.map.zoomOut();
}
}
@Override
publicvoidreadProgress(intbytes,inttotal){
}
}
您可能感興趣的文章:
- Android仿微信5實(shí)現(xiàn)滑動(dòng)導(dǎo)航條
- Android仿微信實(shí)現(xiàn)首字母導(dǎo)航條
- Android自定義控件實(shí)現(xiàn)可左右滑動(dòng)的導(dǎo)航條
- Android MarginDesign控件TabLayout導(dǎo)航欄使用詳解
- 詳解android使用ItemDecoration 懸浮導(dǎo)航欄效果
- Android實(shí)現(xiàn)App中導(dǎo)航Tab欄懸浮的功能
- Android自定義View實(shí)現(xiàn)字母導(dǎo)航欄的代碼
- android讀取sdcard路徑下的文件的方法
- Android獲得內(nèi)/外置存儲(chǔ)卡路徑的方法
- Android中訪問(wèn)sdcard路徑的幾種方式
- Android 獲取內(nèi)外SD卡路徑幾種方法總結(jié)
- Android編程實(shí)現(xiàn)的簡(jiǎn)易路徑導(dǎo)航條功能示例
相關(guān)文章
Android判斷某個(gè)權(quán)限是否開啟的方法
今天小編就為大家分享一篇Android判斷某個(gè)權(quán)限是否開啟的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07
Android自定義ScrollView使用自定義監(jiān)聽(tīng)
這篇文章主要介紹了Android自定義ScrollView使用自定義監(jiān)聽(tīng) ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12
Android UI手機(jī)信息頁(yè)面設(shè)計(jì)
這篇文章主要為大家詳細(xì)介紹了Android UI手機(jī)信息頁(yè)面的設(shè)計(jì)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
Android UI設(shè)計(jì)與開發(fā)之仿人人網(wǎng)V5.9.2最新版引導(dǎo)界面
這篇文章主要為大家詳細(xì)介紹了Android UI設(shè)計(jì)與開發(fā)之仿人人網(wǎng)V5.9.2最新版引導(dǎo)界面,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-08-08
如果你在Android Studio碰到gradle的各種問(wèn)題就來(lái)看這篇文章吧(強(qiáng)烈建議收藏)
這篇文章主要介紹了你可能會(huì)在Android Studio碰到gradle的各種問(wèn)題,完美解決關(guān)于gradle的全部問(wèn)題,切記收藏以防需要的時(shí)候找不到了哦2021-08-08
android Gallery組件實(shí)現(xiàn)的iPhone圖片滑動(dòng)效果實(shí)例
這篇文章主要介紹了android Gallery組件實(shí)現(xiàn)的iPhone圖片滑動(dòng)效果實(shí)例,即相冊(cè)內(nèi)的圖片實(shí)現(xiàn)可左右滑動(dòng)的效果,需要的朋友可以參考下2014-07-07
Android高仿微信對(duì)話列表滑動(dòng)刪除效果
這篇文章主要為大家詳細(xì)介紹了Android高仿微信對(duì)話列表滑動(dòng)刪除效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08

