Added in API level 1

NinePatchDrawable


open class NinePatchDrawable : Drawable
kotlin.Any
   ↳ android.graphics.drawable.Drawable
   ↳ android.graphics.drawable.NinePatchDrawable

A resizeable bitmap, with stretchable areas that you define. This type of image is defined in a .png file with a special format.

Summary

Public constructors
NinePatchDrawable(res: Resources!, bitmap: Bitmap!, chunk: ByteArray!, padding: Rect!, srcName: String!)

Create drawable from raw nine-patch data, setting initial target density based on the display metrics of the resources.

Create drawable from existing nine-patch, setting initial target density based on the display metrics of the resources.

NinePatchDrawable(bitmap: Bitmap!, chunk: ByteArray!, padding: Rect!, srcName: String!)

Create drawable from raw nine-patch data, not dealing with density.

Create drawable from existing nine-patch, not dealing with density.

Public methods
open Unit

Applies the specified theme to this Drawable and its children.

open Boolean

open Unit
draw(canvas: Canvas)

open Int

open Int

Return a mask of the configuration parameters for which this drawable may change, requiring that it be re-created.

open Drawable.ConstantState?

open Int

open Int

open Int

open Insets

open Unit
getOutline(outline: Outline)

Called to get the drawable to populate the Outline that defines its drawing area.

open Boolean
getPadding(padding: Rect)

Return in padding the insets suggested by this Drawable for placing content inside the drawable's bounds.

open Paint

open Region?

open Boolean

open Unit
inflate(r: Resources, parser: XmlPullParser, attrs: AttributeSet, theme: Resources.Theme?)

open Boolean

open Boolean

open Boolean

open Drawable

open Unit
setAlpha(alpha: Int)

open Unit

open Unit
setColorFilter(colorFilter: ColorFilter?)

Specify an optional color filter for the drawable.

open Unit
setDither(dither: Boolean)

open Unit

open Unit

Set the density scale at which this drawable will be rendered.

open Unit

Set the density scale at which this drawable will be rendered.

open Unit

Set the density at which this drawable will be rendered.

open Unit

Specifies a tint blending mode for this drawable.

open Unit

Specifies tint color for this drawable as a color state list.

Protected methods
open Boolean

Inherited functions

Public constructors

NinePatchDrawable

Added in API level 4
NinePatchDrawable(
    res: Resources!,
    bitmap: Bitmap!,
    chunk: ByteArray!,
    padding: Rect!,
    srcName: String!)

Create drawable from raw nine-patch data, setting initial target density based on the display metrics of the resources.

NinePatchDrawable

Added in API level 4
NinePatchDrawable(
    res: Resources?,
    patch: NinePatch)

Create drawable from existing nine-patch, setting initial target density based on the display metrics of the resources.

Parameters
res Resources?: This value may be null.
patch NinePatch: This value cannot be null.

NinePatchDrawable

Added in API level 1
NinePatchDrawable(
    bitmap: Bitmap!,
    chunk: ByteArray!,
    padding: Rect!,
    srcName: String!)

Deprecated: Use NinePatchDrawable(android.content.res.Resources,android.graphics.Bitmap,byte[],android.graphics.Rect,java.lang.String) to ensure that the drawable has correctly set its target density.

Create drawable from raw nine-patch data, not dealing with density.

NinePatchDrawable

Added in API level 1
NinePatchDrawable(patch: NinePatch)

Deprecated: Use NinePatchDrawable(android.content.res.Resources,android.graphics.NinePatch) to ensure that the drawable has correctly set its target density.

Create drawable from existing nine-patch, not dealing with density.

Parameters
patch NinePatch: This value cannot be null.

Public methods

applyTheme

Added in API level 21
open fun applyTheme(t: Resources.Theme): Unit

Applies the specified theme to this Drawable and its children.

Parameters
t Resources.Theme: This value cannot be null.

canApplyTheme

Added in API level 21
open fun canApplyTheme(): Boolean

draw

Added in API level 1
open fun draw(canvas: Canvas): Unit
Parameters
canvas Canvas: The canvas to draw into This value cannot be null.

getAlpha

Added in API level 19
open fun getAlpha(): Int
Return
Int Value is between 0 and 255 inclusive

getConstantState

Added in API level 1
open fun getConstantState(): Drawable.ConstantState?
Return
Drawable.ConstantState? The ConstantState associated to that Drawable. This value may be null.

getIntrinsicHeight

Added in API level 1
open fun getIntrinsicHeight(): Int
Return
Int the intrinsic height, or -1 if no intrinsic height

getIntrinsicWidth

Added in API level 1
open fun getIntrinsicWidth(): Int
Return
Int the intrinsic width, or -1 if no intrinsic width

getOpacity

Added in API level 1
open fun getOpacity(): Int
Return
Int int The opacity class of the Drawable. Value is android.graphics.PixelFormat#UNKNOWN, android.graphics.PixelFormat#TRANSLUCENT, android.graphics.PixelFormat#TRANSPARENT, or android.graphics.PixelFormat#OPAQUE

getOpticalInsets

Added in API level 29
open fun getOpticalInsets(): Insets
Return
Insets This value cannot be null.

getOutline

Added in API level 21
open fun getOutline(outline: Outline): Unit

Called to get the drawable to populate the Outline that defines its drawing area.

This method is called by the default android.view.ViewOutlineProvider to define the outline of the View.

The default behavior defines the outline to be the bounding rectangle of 0 alpha. Subclasses that wish to convey a different shape or alpha value must override this method.

Parameters
outline Outline: This value cannot be null.

getPadding

Added in API level 1
open fun getPadding(padding: Rect): Boolean

Return in padding the insets suggested by this Drawable for placing content inside the drawable's bounds. Positive values move toward the center of the Drawable (set Rect.inset).

Parameters
padding Rect: This value cannot be null.
Return
Boolean true if this drawable actually has a padding, else false. When false is returned, the padding is always set to 0.

getPaint

Added in API level 1
open fun getPaint(): Paint
Return
Paint This value cannot be null.

getTransparentRegion

Added in API level 1
open fun getTransparentRegion(): Region?
Return
Region? Returns null if the Drawables has no transparent region to report, else a Region holding the parts of the Drawable's bounds that are transparent.

hasFocusStateSpecified

Added in API level 31
open fun hasFocusStateSpecified(): Boolean
Return
Boolean true if android.R.attr#state_focused is specified for this drawable.

inflate

Added in API level 21
open fun inflate(
    r: Resources,
    parser: XmlPullParser,
    attrs: AttributeSet,
    theme: Resources.Theme?
): Unit
Parameters
r Resources: Resources used to resolve attribute values This value cannot be null.
parser XmlPullParser: XML parser from which to inflate this Drawable This value cannot be null.
attrs AttributeSet: Base set of attribute values This value cannot be null.
theme Resources.Theme?: Theme to apply, may be null
Exceptions
org.xmlpull.v1.XmlPullParserException
java.io.IOException

isAutoMirrored

Added in API level 19
open fun isAutoMirrored(): Boolean
Return
Boolean boolean Returns true if this Drawable will be automatically mirrored.

isFilterBitmap

Added in API level 23
open fun isFilterBitmap(): Boolean
Return
Boolean whether this drawable filters its bitmaps

isStateful

Added in API level 1
open fun isStateful(): Boolean
Return
Boolean True if this drawable changes its appearance based on state, false otherwise.

mutate

Added in API level 3
open fun mutate(): Drawable
Return
Drawable This drawable. This value cannot be null.

setAlpha

Added in API level 1
open fun setAlpha(alpha: Int): Unit
Parameters
alpha Int: Value is between 0 and 255 inclusive

setAutoMirrored

Added in API level 19
open fun setAutoMirrored(mirrored: Boolean): Unit
Parameters
mirrored Boolean: Set to true if the Drawable should be mirrored, false if not.

setColorFilter

Added in API level 1
open fun setColorFilter(colorFilter: ColorFilter?): Unit

Specify an optional color filter for the drawable.

If a Drawable has a ColorFilter, each output pixel of the Drawable's drawing contents will be modified by the color filter before it is blended onto the render target of a Canvas.

Pass null to remove any existing color filter.

Note: Setting a non-null color filter disables tint.

Parameters
colorFilter ColorFilter?: This value may be null.

setDither

Added in API level 1
open fun setDither(dither: Boolean): Unit

setFilterBitmap

Added in API level 1
open fun setFilterBitmap(filter: Boolean): Unit

setTargetDensity

Added in API level 4
open fun setTargetDensity(canvas: Canvas): Unit

Set the density scale at which this drawable will be rendered. This method assumes the drawable will be rendered at the same density as the specified canvas.

Parameters
canvas Canvas: The Canvas from which the density scale must be obtained. This value cannot be null.

setTargetDensity

Added in API level 4
open fun setTargetDensity(metrics: DisplayMetrics): Unit

Set the density scale at which this drawable will be rendered.

Parameters
metrics DisplayMetrics: The DisplayMetrics indicating the density scale for this drawable. This value cannot be null.

setTargetDensity

Added in API level 4
open fun setTargetDensity(density: Int): Unit

Set the density at which this drawable will be rendered.

Parameters
density Int: The density scale for this drawable.

setTintBlendMode

Added in API level 29
open fun setTintBlendMode(blendMode: BlendMode?): Unit

Specifies a tint blending mode for this drawable.

Defines how this drawable's tint color should be blended into the drawable before it is drawn to screen. Default tint mode is BlendMode.SRC_IN.

Note: Setting a color filter via setColorFilter(android.graphics.ColorFilter)

Parameters
blendMode BlendMode?: This value may be null.

setTintList

Added in API level 21
open fun setTintList(tint: ColorStateList?): Unit

Specifies tint color for this drawable as a color state list.

A Drawable's drawing content will be blended together with its tint before it is drawn to the screen. This functions similarly to setColorFilter(int,android.graphics.PorterDuff.Mode).

Note: Setting a color filter via setColorFilter(android.graphics.ColorFilter) or setColorFilter(int,android.graphics.PorterDuff.Mode) overrides tint.

Parameters
tint ColorStateList?: This value may be null.

Protected methods

onStateChange

Added in API level 1
protected open fun onStateChange(stateSet: IntArray): Boolean
Parameters
state This value cannot be null.
Return
Boolean Returns true if the state change has caused the appearance of the Drawable to change (that is, it needs to be drawn), else false if it looks the same and there is no need to redraw it since its last state.