形状xml中的边框


157

我正在尝试使一个可绘制的按钮使用。我希望它具有这种颜色,并带有2px的边框。

一切正常,除非我无法显示边框...

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

    <gradient android:startColor="@color/bar_clicked_dark"
        android:endColor="@color/bar_clicked_light"
        android:angle="90"/>

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

    <stroke android:width="2dp" 
        color="#ff00ffff" />

</shape>

Answers:


281

好像您忘记了color属性的前缀。尝试

 <stroke android:width="2dp" android:color="#ff00ffff"/>

83

如果要在xml形状中制作边框。您需要使用:

对于外部边界,您需要使用:

<stroke/>

对于内部背景,您需要使用:

<solid/>

如果要设置拐角,则需要使用:

<corners/>

如果要在边框和内部元素之间填充,则需要使用:

<padding/>

这是一个使用上述项目的shape xml示例。这个对我有用

<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
  <stroke android:width="2dp" android:color="#D0CFCC" /> 
  <solid android:color="#F8F7F5" /> 
  <corners android:radius="10dp" />
  <padding android:left="2dp" android:top="2dp" android:right="2dp" android:bottom="2dp" />
</shape>

1
以及如何使用这种类型的xml drawable制作“ U”形?
森曼喜树社(Himanshu Mori)

8

我们可以像下面那样添加drawable .xml

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


    <stroke
        android:width="1dp"
        android:color="@color/color_C4CDD5"/>

    <corners android:radius="8dp"/>

    <solid
        android:color="@color/color_white"/>

</shape>
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.