在地图活动中,我创建了叠加层,在其上Cnavas
绘制形状使用Paint
形状由点和线组成
linePaint = new Paint();
linePaint.setColor(mContext.getResources().getColor(R.color.Line));
linePaint.setStyle(Paint.Style.STROKE);
linePaint.setStrokeWidth(strokeWidth);
linePaint.setXfermode(avoidXfermode);
linePaint.setFlags(Paint.ANTI_ALIAS_FLAG);
mPointPaint = new Paint();
mPointPaint.setColor(pointColor);
mPointPaint.setFlags(Paint.ANTI_ALIAS_FLAG);
我还定义AvoidXfermode
以避免点与线重叠(点必须在“顶部”)
avoidXfermode = new AvoidXfermode(pointColor, 255, Mode.AVOID);
以 32b 格式在资源中定义的颜色
<color name="Point">#FFFF0000</color>
<color name="Line">#FF4169E1</color>
问题是:它在使用 api 10 的设备上运行良好,但在使用 api v14 的 Nexus 下根本无法运行(有任何容差)
我做错了什么?