我试着在黑暗的背景上画一个圆圈,想得到这样的东西-

这实际上适用于我的三星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)
发布于 2015-08-13 18:03:04
明白了。Android在canvas.clipRect上有一个bug,他们已经对它进行了优化,但是在一些android上它很简单,在优化之后就不能工作了),我发现了一个问题。
因此,修复-禁用该视图的hrdware加速。
(Build.VERSION.SDK_INT <= 19 && mCropShape == CropImageView.CropShape.OVAL) {
//TURN off hardware acceleration
setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}https://stackoverflow.com/questions/31994297
复制相似问题