我使用自定义矩形作为背景:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners android:radius="20dp"/>
<padding android:left="10dp" android:right="10dp" android:top="10dp" android:bottom="10dp"/>
<solid android:color="#FFFFFF"/>
</shape>
这给了我一张漂亮的卡片形状,但是我希望有一个纯黑色(或其他颜色线)。我假设我需要在我的xml中创建一个黑色矩形,它比我当前的矩形宽1点,然后将较小的白色矩形放在顶部。我可以在我的主XML中使用framelayout和两个不同的自定义矩形在一个额外的框架布局上执行此操作,这似乎可能会过度设计问题。有没有办法在一个自定义xml背景drawable中执行此操作。
由于
答案 0 :(得分:6)
对于边框,您只需添加一行:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners android:radius="20dp"/>
<padding android:left="10dp" android:right="10dp" android:top="10dp" android:bottom="10dp"/>
<solid android:color="#FFFFFF"/>
//ADD THIS LINE
<stroke android:width="1dp" android:color="#000000"/>
</shape>
答案 1 :(得分:4)
你必须做这样的事情:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle" >
<solid android:color="@android:color/transparent" />
</shape>
</item>
<item >
<shape>
<solid android:color="@android:color/transparent"/>
<stroke
android:width="3dp"
android:color="#0093dd" >
</stroke>
</shape>
</item>
</layer-list>
您可以将第一项中的透明色更改为您希望达到的纯色。