2

我试图:

<corners 
 android:bottomRightRadius="0dp"
 android:bottomLeftRadius="0dp"
 android:topLeftRadius="10dp"
 android:topRightRadius="10dp"/>

没有拐角半径。

<corners 
 android:bottomRightRadius="1dp"
 android:bottomLeftRadius="1dp"
 android:topLeftRadius="10dp"
 android:topRightRadius="10dp"/>

所有角半径 == 10dp。

是否有可能以及如何指定角:10dp(左上)10dp(右上)0 0(下)?

4

4 回答 4

4

在 Android 开发者http://developer.android.com/guide/topics/resources/drawable-resource.html#Shape

说这注:必须(最初)为每个角提供大于 1 的角半径,否则不会圆角。如果您希望特定角不被圆角,解决方法是使用 android:radius 将默认角半径设置为大于 1,然后用您真正想要的值覆盖每个角,提供零(“0dp” ) 你不想要圆角的地方。

如果你执行你的代码,即使有预览警告它也会看起来很好,我认为这是一个错误或类似的东西。这是我写的:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="@color/brown_light"/>
        <corners
            android:topLeftRadius="0dp"
            android:topRightRadius="0dp"
            android:bottomLeftRadius="30dp"
            android:bottomRightRadius="30dp"
            />

</shape>
于 2014-11-25T01:07:43.147 回答
2

这是我实际的可绘制(形状)XML 文件。是的,可以有不同的尺寸,如您的要求。这是 XML 代码:

<gradient
    android:startColor="#696969"
    android:endColor="#a2a2a2"
    android:angle="90"  >
</gradient>

<padding
    android:left="5dp"
    android:top="5dp"
    android:right="5dp"
    android:bottom="5dp"    >
</padding>

<corners
    android:radius="10dp"
    android:bottomLeftRadius="0dp"
    android:bottomRightRadius="0dp" >
</corners>

于 2012-05-12T05:03:25.120 回答
1
<corners android:radius="1dp"
  android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp" 
  android:topLeftRadius="5dp" android:topRightRadius="5dp"/>

试试上面的代码,它将左上角和右上角设置为 5 DP

于 2012-05-12T03:56:50.980 回答
1

你可以这样做

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item>
        <shape android:shape="rectangle" >
            <solid android:color="#000000" />

            <corners android:radius="8dp" />
        </shape>
    </item>
    <item android:top="8dp">  <!-- the distance to top -->
        <shape android:shape="rectangle" >
            <solid android:color="#000000" />
        </shape>
    </item>

</layer-list>
于 2014-06-26T05:16:47.420 回答