如何剪切子视图的路径?

时间:2015-07-18 17:12:00

标签: android android-canvas

我有一个自定义View,其范围为FrameLayout。假设我的自定义FrameLayout只有一个孩子(ImageView匹配其父母的宽度和身高)。

我只想在我的自定义drawChild中使用FrameLayout方法绘制他孩子的圆圈形状。 enter image description here

我该怎么做?

1 个答案:

答案 0 :(得分:1)

您需要创建路径并将其剪辑到画布。

private Path mPath = new Path();

@Override
    protected boolean drawChild(Canvas canvas, View child, long drawingTime) {
        mPath.reset();
        mPath.addCircle(x, y, radius, Path.Direction.CW);
        canvas.clipPath(mPath);
        boolean super.drawChild(canvas, child, drawingTime);
    }