Android Guides | Samples

Android.Graphics.Drawables.VectorDrawable Class

This lets you create a drawable based on an XML vector graphic.

See Also: VectorDrawable

Syntax

[Android.Runtime.Register("android/graphics/drawable/VectorDrawable", DoNotGenerateAcw=true)]
public class VectorDrawable : Drawable

Remarks

This lets you create a drawable based on an XML vector graphic. It can be defined in an XML file with the <vector> element.

The vector drawable has the following elements:

<vector>
Used to define a vector drawable
android:name
Defines the name of this vector drawable.
android:width
Used to define the intrinsic width of the drawable. This support all the dimension units, normally specified with dp.
android:height
Used to define the intrinsic height the drawable. This support all the dimension units, normally specified with dp.
android:viewportWidth
Used to define the width of the viewport space. Viewport is basically the virtual canvas where the paths are drawn on.
android:viewportHeight
Used to define the height of the viewport space. Viewport is basically the virtual canvas where the paths are drawn on.
android:tint
The color to apply to the drawable as a tint. By default, no tint is applied.
android:tintMode
The Porter-Duff blending mode for the tint color. The default value is src_in.
android:autoMirrored
Indicates if the drawable needs to be mirrored when its layout direction is RTL (right-to-left).
android:alpha
The opacity of this drawable.
<group>
Defines a group of paths or subgroups, plus transformation information. The transformations are defined in the same coordinates as the viewport. And the transformations are applied in the order of scale, rotate then translate.
android:name
Defines the name of the group.
android:rotation
The degrees of rotation of the group.
android:pivotX
The X coordinate of the pivot for the scale and rotation of the group. This is defined in the viewport space.
android:pivotY
The Y coordinate of the pivot for the scale and rotation of the group. This is defined in the viewport space.
android:scaleX
The amount of scale on the X Coordinate.
android:scaleY
The amount of scale on the Y coordinate.
android:translateX
The amount of translation on the X coordinate. This is defined in the viewport space.
android:translateY
The amount of translation on the Y coordinate. This is defined in the viewport space.
<path>
Defines paths to be drawn.
android:name
Defines the name of the path.
android:pathData
Defines path data using exactly same format as "d" attribute in the SVG's path data. This is defined in the viewport space.
android:fillColor
Defines the color to fill the path (none if not present).
android:strokeColor
Defines the color to draw the path outline (none if not present).
android:strokeWidth
The width a path stroke.
android:strokeAlpha
The opacity of a path stroke.
android:fillAlpha
The opacity to fill the path with.
android:trimPathStart
The fraction of the path to trim from the start, in the range from 0 to 1.
android:trimPathEnd
The fraction of the path to trim from the end, in the range from 0 to 1.
android:trimPathOffset
Shift trim region (allows showed region to include the start and end), in the range from 0 to 1.
android:strokeLineCap
Sets the linecap for a stroked path: butt, round, square.
android:strokeLineJoin
Sets the lineJoin for a stroked path: miter,round,bevel.
android:strokeMiterLimit
Sets the Miter limit for a stroked path.
<clip-path>
Defines path to be the current clip. Note that the clip path only apply to the current group and its children.
android:name
Defines the name of the clip path.
android:pathData
Defines clip path using the same format as "d" attribute in the SVG's path data.
Here is a simple VectorDrawable in this vectordrawable.xml file.

java Example

 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:height="64dp"
     android:width="64dp"
     android:viewportHeight="600"
     android:viewportWidth="600" >
     <group
         android:name="rotationGroup"
         android:pivotX="300.0"
         android:pivotY="300.0"
         android:rotation="45.0" >
         <path
             android:name="v"
             android:fillColor="#000000"
             android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
     </group>
 </vector>

[Android Documentation]

Requirements

Namespace: Android.Graphics.Drawables
Assembly: Mono.Android (in Mono.Android.dll)
Assembly Versions: 0.0.0.0

The members of Android.Graphics.Drawables.VectorDrawable are listed below.

See Also: Drawable

Public Constructors

Protected Constructors

A constructor used when creating managed representations of JNI objects; called by the runtime.

Public Properties

[read-only]
override
OpacityInt32. Return the opacity/transparency of this Drawable.

Protected Properties

[read-only]
override
ThresholdClassIntPtr. This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.
[read-only]
override
ThresholdTypeType. This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

Public Methods

override
Draw(Canvas)
Draw in its bounds (set via setBounds) respecting optional effects such as alpha (set via setAlpha) and color filter (set via setColorFilter).
override
SetAlpha(Int32)
Specify an alpha value for the drawable. 0 means fully transparent, and 255 means fully opaque.
override
SetColorFilter(ColorFilter)
Specify an optional color filter for the drawable.