开发思路很简单,就是通过用户输入经纬度坐标值来定位,查看地图时可以缩放,并且可以切换视图模式。程序运行界面如下:
普通视角 卫星视角
1,定义地图界面组件和地图控制:
private MapView mv;
private MapController controller;
2,onCreate函数添加如下代码:
mv=(MapView)findViewById(R.id.mv);
mv.setBuiltInZoomControls(true);
controller=mv.getController();
controller.setZoom(17);
3,查询按钮代码如下:
btnGo.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
// TODO Auto-generated method stub
String sLong=etLong.getText().toString().trim();
String sLat=etLat.getText().toString().trim();
if (sLong.equals("")||sLat.equals("")) {
Toast.makeText(MyMapActivity.this, "请输入正确的经纬度", Toast.LENGTH_SHORT).show();
return;
}
double dLong=Double.parseDouble(sLong);
double dLat=Double.parseDouble(sLat);
updateMapView(dLong,dLat);
GeoPoint gp=new GeoPoint((int)(dLong*1E6),(int)(dLat*1E6));
controller.animateTo(gp);
}
});
4,单选按钮组代码如下:
rg.setOnCheckedChangeListener(new OnCheckedChangeListener(){
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
if (checkedId==rbNormal.getId()) {
mv.setSatellite(false);
}
else if (checkedId==rbSatelite.getId()) {
mv.setSatellite(true);
}
}});
5,修改Androidmanifest.xml文件,添加Map类库和访问网络权限。
<uses-library android:name="com.google.android.maps"/>
<uses-permission android:name="android.permission.INTERNET"/>
要注意代码的位置,在Eclipse开发平台打开Androidmanifest.xml文件,通过Application标签和Permissions标签可以很容易实现完成。