弯曲矩形形状的安卓系统

6

我希望在XML中创建一个矩形形状,它需要一个曲线形状。这是否可以通过XML标记或编程实现?

我现在有的代码:

<?xml version="1.0" encoding="UTF-8" ?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <corners
        android:topLeftRadius="45dp"
        android:topRightRadius="45dp"
        android:bottomLeftRadius="45dp"
        android:bottomRightRadius="45dp" />
    <solid
        android:color="#4F4F4F" />
    <stroke
        android:width="3dp"
        android:color="#878787" />
</shape>

有人能帮我吗?

在此输入图片描述

我的想法如下:

http://i.stack.imgur.com/RD7I0.png

这个矩形必须用曲线进行变形。


看起来像一个弧线。 - njzk2
1
你有查看过 http://developer.android.com/guide/topics/resources/drawable-resource.html#Shape 吗? - njzk2
1个回答

5
您可以使用一个形状资源作为视图的背景,可以是椭圆形:
<shape android:shape="oval">
 <stroke android:width="1dp" android:color="#FF000000" />
</shape>

或一个带有圆角的矩形:
<shape android:shape="rectangle">
 <stroke android:width="1dp" android:color="#FF000000" />
 <corners android:radius="20dp" />
</shape>

从你的问题中,我不清楚你想要做什么。椭圆形将适应你对象的宽度和高度。

当然,你可以通过自定义Drawable来精确控制,实现自己的draw()方法并在画布上绘制。如果你正在寻找非常特定的东西,这可能是最好的方法。


1
根据你的问题,我已经制作了一个示例,展示了我所提到的内容 --> http://i.stack.imgur.com/RD7I0.png - Ivan Ivanov

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接