有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android如何使用XML圆形剪裁视图?

我需要画一个空圆圈,我知道我可以画一个这样的圆圈:

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

然后我只需将它设置为任何视图的背景,它就会显示在屏幕上

但是,包含圆作为背景的视图是一个正方形(或矩形),具有定义的高度和宽度。因此,将在视图内部绘制圆

但是如果我想剪辑上面的视图怎么办

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

不知何故,我可以用安卓:clipChildren="true"来管理,这样就没有什么比视图的方形边框更进一步了。但这还不够,因为动画内容确实离开了圆圈,并在视图边界处停止

有没有办法做到这一点?我想在这里继续讨论XML级别。没有画布,没有要在运行时运行的代码。可能吗

谢谢


共 (0) 个答案