1. 地图和线的绘制
本章设计到的源码请从下面的位置下载
相关文件下载在Linux公社的1号FTP服务器里,下载地址:
FTP地址:ftp://www.linuxidc.com
用户名:www.linuxidc.com
密码:www.muu.cc
在 2011年LinuxIDC.com\10月\10月\Android上的Google Map 开发总结
下载方法见 http://www.linuxidc.net/thread-1187-1-1.html
1.1 地图上绘制一个Logo
1.2 实现动态的位置回放的功能【动态更新GPS位置】
2. 获取公交线路
Android目前的SDK版本中, 不存在绘制公交线路的API, 正因为如此, 我们需要采用比较原始的方式,Android Google Map 轨迹回放源码, 可以用Google Map实现gps动态导航的功能。
package com.ostrichmyself;
import java.util.ArrayList;
import java.util.HashMap;
import Android.widget.SimpleAdapter;
public class MapShow extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//load_grid0001();
super.onCreate(savedInstanceState);
loadView();
}
/**
* Grid0001使用方式的代码
*/
public void loadView()
{
setContentView(R.layout.appmain);
GridView gridview = (GridView) findViewById(R.id.gridview);
//生成动态数组,并且转入数据
ArrayList
public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) {
if (arg2 == 0)
{
Intent intent = new Intent(MapShow.this, DisplayMap.class);
Bundle bundle = new Bundle();
double longitude = Double.valueOf(114.567421);
double latitude = Double.valueOf(40.491295);
int lat = (int) (latitude * 1E6);
int lng = (int) (longitude * 1E6);
bundle.putInt(ConstConfiguration.BUDDLE_INT_KEY_LAT, lat);
bundle.putInt(ConstConfiguration.BUDDLE_INT_KEY_LON, lng);
intent.putExtras(bundle);
startActivity(intent);
}
if (arg2 == 1)
{
Intent intent = new Intent(MapShow.this, TraceMap.class);
Bundle bundle = new Bundle();
double longitude = Double.valueOf(114.567421);
double latitude = Double.valueOf(40.491295);
int lat = (int) (latitude * 1E6);
int lng = (int) (longitude * 1E6);
bundle.putInt(ConstConfiguration.BUDDLE_INT_KEY_LAT, lat);
bundle.putInt(ConstConfiguration.BUDDLE_INT_KEY_LON, lng);
intent.putExtras(bundle);
startActivity(intent);
}
}
}
}