简单的android 绘图类 可应用于地铁公交路线绘制以及车辆位置跟踪

/**
 *绘制车站以及车辆位置
 *同一位置存在多辆机车的情况下,车辆卡号上从上往下叠
 *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
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值