3

我有一个像这样的自定义矩形

<?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp">
    <solid android:color="#FFFFFF" />
    <stroke android:width="1dip" android:color="#ff6600" />
    <corners
        android:bottomRightRadius="5dp"
        android:bottomLeftRadius="5dp"
        android:topLeftRadius="5dp"
        android:topRightRadius="5dp"/>
</shape>

我想像这样在矩形内画一条线

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="line" >
    <solid android:color="@color/cafe" />    
    <stroke android:width="5dip" 
    android:color="#FF0000" android:dashWidth="5dip"/>
</shape>

我该怎么做,帮助

4

2 回答 2

5

关键字是layer-list。这是一个完全基于 xml 的非常好的示例:Android:当设置为背景时,如何使用 layer-list 和 shape 元素绘制水平规则?

于 2012-05-30T21:19:11.797 回答
1

您可以通过扩展 View 类并覆盖 onDraw 方法来实现自定义视图。在 onDraw() 中,您可以使用 Canvas 类中的方法来绘制您需要的形状。不要忘记首先在方法中调用 super.onDraw()。

在这里找到一个例子。

于 2012-05-30T21:17:49.167 回答