我需要绘制一个空心圆,我知道我可以有一个这样的:
<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级别。没有画布,不是在运行时运行的代码。有可能吗?
谢谢!