/**
*绘制车站以及车辆位置
*同一位置存在多辆机车的情况下,车辆卡号上从上往下叠
*Created by baitiantian on 2019/10/15.
*/
class LocomotiveLocatingView extends View {
Paint paintLine;//路线
Paint paintPoint;//站点
Paint paintStationText;//车站名
Paint paintLocomotivePoint;//机车点
Paint paintLocomotiveText;//机车名
List<HashMap<String, Object>> listStation = new ArrayList<>();
List<HashMap<String, Object>> listLocomotive = new ArrayList<>();
public LocomotiveLocatingView(Context context) {
super(context);
paintLine = new Paint(); //设置车站路线画笔
paintLine.setColor(Color.parseColor("#0BA194"));
paintLine.setStrokeJoin(Paint.Join.ROUND);
paintLine.setStrokeCap(Paint.Cap.ROUND);
paintLine.setStrokeWidth(10);
paintPoint = new Paint(); //设置车站点画笔
paintPoint.setColor(Color.parseColor("#deb23b"));
paintPoint.setStrokeJoin(Paint.Join.ROUND);
paintPoint.setStrokeCap(Paint.Cap.ROUND);
paintPoint.setStrokeWidth(10);
paintStationText = new Paint();//设置车站字体
paintStationText.setColor(Color.parseColor("#BA800B"));
paintStationText.setStrokeWidth(10);
paintStationText.setTextSize(26);
paintLocomotivePoint = new Paint();//机车点
paintLocomotivePoint.setColor(Color.parseColor("#BA4114"));
paintLocomotivePoint.setStrokeJoin(Paint.Join.ROUND);
paintLocomotivePoint.setStrokeCap(Paint.Cap.ROUND);
paintLocomotivePoint.setStrokeWidth(12);
paintLocomotiveText = new Paint();//设置机车名字体
paintLocomotiveText.setColor(Color.parseColor("#BA4114"));
paintLocomotiveText.setStrokeWidth(10);
paintLocomotiveText.setTextSize(26);
}
//在这里我们将测试canvas提供的绘制图形方法
@RequiresApi(api = Build.VERSION_CODES.KITKAT)
@Override
protected void onDraw(Canvas canvas) {
canvas.drawColor(Color.parseColor("#cccccc"));
int stationNum = 0;
stati
简单的android 绘图类 可应用于地铁公交路线绘制以及车辆位置跟踪
最新推荐文章于 2024-03-10 13:30:08 发布