Android如何使用XML Circle形状剪辑视图?

时间:2015-12-04 19:55:42

标签: java android animation views clip

我需要绘制一个空心圆,我知道我可以有一个这样的:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:innerRadius="0dp"
    android:shape="oval"
    android:thicknessRatio="2"
    android:useLevel="false" >
    <solid android:color="@android:color/transparent" />
    <stroke
        android:width="2dp"
        android:color="@android:color/darker_gray" />
</shape>

然后我只需将其设置为任何视图的背景,并在屏幕上显示。

但是,包含圆形背景的视图是一个方形(或矩形),其中定义的高度和宽度。因此,圆圈在视图内绘制。

但是,如果我想剪辑该视图该怎么办?

让我的视图圈位于布局(线性或相对)内,并填充父级(match_parent)。让我们说这个布局是红色的。我想要做的是,使用圆圈剪裁红色布局,以便只在圆圈内显示红色:红色不得离开圆圈

不知何故,我可以使用android:clipChildren="true"进行管理,这样就没有比视图平方边界更进一步了。但这不是足够,因为动画内容会离开圆圈并在视图边框处停止。

有没有办法实现这个目标?我想在这里保持XML级别。没有画布,不是在运行时运行的代码。有可能吗?

谢谢!

0 个答案:

没有答案