边框形状xml

时间:2011-07-14 19:33:40

标签: android android-layout border shape stroke

我正在尝试制作一个可用于按钮的绘图。我希望它有这种颜色,周围有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="2px" 
        color="#ff00ffff" />

</shape>

3 个答案:

答案 0 :(得分:240)

您似乎忘记了颜色属性上的前缀。试试

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

答案 1 :(得分:68)

如果你想在形状xml中创建一个边框。你需要使用:

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

<stroke/>

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

<solid/>

如果你想设置角落,你需要使用:

<corners/>

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

<padding/>

这是使用上述项目的形状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>

答案 2 :(得分:2)

我们可以添加如下所示的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>