尝试使用canvas.clipPath在画布上绘图

时间:2015-08-13 16:59:19

标签: android android-canvas

我试图在变暗的背景上绘制圆圈,尝试像这样制作一个smth - enter image description here 这实际上适用于我的三星s4和三星标签3,但不适用于s2和一些模拟器(所有周围的视图组都变暗,而且椭圆内部,似乎它看不到我的circleSelectionPath)。请帮助我找到使其适用于每台设备的方法

    final Paint paint = new Paint();
    paint.setColor(Color.parseColor("#77000000"));

        Path circleSelectionPath = new Path();
        mRectF.set(l, t, r, b);
        circleSelectionPath.addOval(mRectF, Path.Direction.CW);
        canvas.clipPath(circleSelectionPath, Region.Op.XOR);
        canvas.drawRect(bitmapRect.left, bitmapRect.top, bitmapRect.right, bitmapRect.bottom, paint );
        canvas.restore();

bitmapRect包含我的视图组尺寸(例如:0,0,500,500)

1 个答案:

答案 0 :(得分:0)

知道了。 Android有一个canvas.clipRect的错误,他们对它进行了优化,但在某些Android apis上,它很容易在优化后不起作用)我发现了一个问题。

所以修复 - 禁用此视图的hrdware加速

<liferay-ui:input-date />