是否有可能在Android代码中创建形状

时间:2011-11-23 16:33:13

标签: android drawable xml-drawable

我知道我可以在代码中定义它,但是可以在代码中定义这种东西吗?

我想创建一个形状,并且形状的值([“rectangle”|“oval”|“line”|“ring”])需要依赖于代码(用户输入)。

这可以在代码中完成吗?我怎么能这样做?

<?xml version="1.0" encoding="utf-8"?>
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape=["rectangle" | "oval" | "line" | "ring"] >
    <corners
        android:radius="integer"
        android:topLeftRadius="integer"
        android:topRightRadius="integer"
        android:bottomLeftRadius="integer"
        android:bottomRightRadius="integer" />
    <gradient
        android:angle="integer"
        android:centerX="integer"
        android:centerY="integer"
        android:centerColor="integer"
        android:endColor="color"
        android:gradientRadius="integer"
        android:startColor="color"
        android:type=["linear" | "radial" | "sweep"]
        android:usesLevel=["true" | "false"] />
    <padding
        android:left="integer"
        android:top="integer"
        android:right="integer"
        android:bottom="integer" />
    <size
        android:width="integer"
        android:height="integer" />
    <solid
        android:color="color" />
    <stroke
        android:width="integer"
        android:color="color"
        android:dashWidth="integer"
        android:dashGap="integer" />
</shape>

1 个答案:

答案 0 :(得分:3)

shape drawable具有关联的类ShapeDrawable,您可以使用它来在代码中构造形状。