我正在努力:
<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。
是否可能&amp;如何指定角落:10dp(左侧)10dp(右侧)0 0(底部)?
答案 0 :(得分: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:radius="5dp"
android:topLeftRadius="0dp"
android:topRightRadius="0dp"
android:bottomLeftRadius="30dp"
android:bottomRightRadius="30dp"
/>
</shape>
答案 1 :(得分: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>
答案 2 :(得分:1)
<corners android:radius="1dp"
android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp"
android:topLeftRadius="5dp" android:topRightRadius="5dp"/>
尝试上面的代码,将左上角和右上角设置为5 DP
答案 3 :(得分: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>