android源代码学习路径查询www.maiziedu.com

来源:互联网 发布:开源论坛源码 编辑:程序博客网 时间:2024/06/04 18:53

android源代码学习路径查询

可以通过RasterMap的getDirection()方法来查询路径,和查询地址类似,路径查询的结果也是通过回调函数的方式来通知应用程序的,下面的例子返回南京到北京的路径。返回结果存放在MapDirection中,MapDirection包含了路径的详细信息,包括路径的每个步骤,长度,时间,方向等。

Java代码

1      packageeoe.demo;

2       

3       

4       

5      importcom.mapdigit.gis.MapDirection;

6       

7      importcom.mapdigit.gis.MapPoint;

8       

9      importcom.mapdigit.gis.geometry.GeoLatLng;

10    

11   importcom.mapdigit.gis.service.IRoutingListener;

12    

13   importcom.pstreets.gisengine.R;

14    

15   importcom.pstreets.gisengine.SharedMapInstance;

16    

17    

18    

19   importandroid.app.Activity;

20    

21   importandroid.os.Bundle;

22    

23   importandroid.view.Menu;

24    

25   importandroid.view.MenuInflater;

26    

27   importandroid.view.MenuItem;

28    

29    

30    

31   publicclassMapRoutingextendsActivityimplementsIRoutingListener{

32    

33    

34    

35   @Override

36    

37   publicvoidonCreate(BundlesavedInstanceState){

38    

39   super.onCreate(savedInstanceState);

40    

41   setContentView(R.layout.main);

42    

43   }

44    

45    

46    

47   @Override

48    

49   publicvoidonStart(){

50    

51   super.onStart();

52    

53   GeoLatLngcenter=newGeoLatLng(32.0616667,118.7777778);

54    

55   SharedMapInstance.map.setCenter(center,15,

56    

57   com.mapdigit.gis.raster.MapType.MICROSOFTCHINA);

58    

59   SharedMapInstance.map.setRoutingListener(this);

60    

61    

62    

63   }

64    

65    

66    

67   @Override

68    

69   publicbooleanonCreateOptionsMenu(Menumenu){

70    

71   MenuInflaterinflater=getMenuInflater();

72    

73   inflater.inflate(R.menu.maprouting_menu,menu);

74    

75   returntrue;

76    

77   }

78    

79    

80    

81   @Override

82    

83   publicbooleanonOptionsItemSelected(MenuItemitem){

84    

85   //Handleitemselection

86    

87   switch(item.getItemId()){

88    

89   caseR.id.getdirection:

90    

91   Stringname1="南京";

92    

93   Stringname2="北京";

94    

95   SharedMapInstance.map.getDirections("from:"+name1+"to:"

96    

97   +name2);

98    

99    

100 

101returntrue;

102 

103 

104 

105default:

106 

107returnsuper.onOptionsItemSelected(item);

108 

109}

110 

111 

112 

113}

114 

115 

116 

117@Override

118 

119publicvoiddone(Stringquery,MapDirectionresult){

120 

121if(result!=null){

122 

123SharedMapInstance.map.setMapDirection(result);

124 

125SharedMapInstance.map.resize(result.getBound());

126 

127SharedMapInstance.map.zoomOut();

128 

129SharedMapInstance.map.zoomOut();

130 

131 

132 

133}

134 

135 

136 

137}

138 

139 

140 

141@Override

142 

143publicvoidreadProgress(intbytes,inttotal){

144 

145 

146 

147}

148 

149 

150 

151}

152 

 


注:文章刊于IT在线教育领跑者——麦子学院http://www.maziedu.com,转载请注明出处。

0 0