Android教程:在百度地图上画出轨迹(三)

2014-11-24 07:40:22 · 作者: · 浏览: 12
paint.setStrokeCap(Paint.Cap.ROUND);
paint.setStrokeWidth(4);


// 连接 所有点
Path path = new Path();
path.moveTo(points.get(0).x, points.get(0).y);
for (int i = 1; i < points.size(); i++) {
path.lineTo(points.get(i).x, points.get(i).y);
}
// 画出路径
canvas.drawPath(path, paint);
boundCenterBottom(marker);
}


@Override
protected OverlayItem createItem(int i) {
// TODO Auto-generated method stub
return mGeoList.get(i);
}


@Override
public int size() {
// TODO Auto-generated method stub
return mGeoList.size();
}


@Override
// 处理当点击事件
protected boolean onTap(int i) {
setFocus(mGeoList.get(i));
// 更新气泡位置,并使之显示
GeoPoint pt = mGeoList.get(i).getPoint();
MyTrace.mMapView.updateViewLayout(MyTrace.mPopView,
new MapView.LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT, pt,
MapView.LayoutParams.BOTTOM_CENTER));
MyTrace.mPopView.setVisibility(View.VISIBLE);
Toast.makeText(this.mContext, mGeoList.get(i).getSnippet(),
Toast.LENGTH_SHORT).show();
return true;
}


@Override
public boolean onTap(GeoPoint arg0, MapView arg1) {
// TODO Auto-generated method stub
// 消去弹出的气泡
MyTrace.mPopView.setVisibility(View.GONE);
return super.onTap(arg0, arg1);
}
}


运行的效果图: