Partager via


Drawable Classe

Définition

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

[Android.Runtime.Register("android/graphics/drawable/Drawable", DoNotGenerateAcw=true)]
public abstract class Drawable : Java.Lang.Object
[<Android.Runtime.Register("android/graphics/drawable/Drawable", DoNotGenerateAcw=true)>]
type Drawable = class
    inherit Object
Héritage
Drawable
Dérivé
Attributs

Remarques

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné ». Le plus souvent, vous traiterez avec Drawable comme type de ressource récupérée pour dessiner des éléments à l’écran ; la classe Drawable fournit une API générique pour traiter une ressource visuelle sous-jacente qui peut prendre diverses formes. Contrairement à un android.view.Viewdessinable, il n’existe aucune fonctionnalité permettant de recevoir des événements ou d’interagir avec l’utilisateur.

En plus du dessin simple, Drawable fournit un certain nombre de mécanismes génériques pour que son client interagisse avec ce qui est dessiné :

<ul><li> La #setBounds méthode <var>doit</var> être appelée pour indiquer où elle est dessinée et la taille qu’elle doit être. Tous les dessinables doivent respecter la taille demandée, souvent en mettant à l’échelle leur image. Un client peut trouver la taille préférée pour certains Dessinables avec les méthodes et #getIntrinsicWidth les #getIntrinsicHeight méthodes.

<li> La #getPadding méthode peut retourner à partir de certaines informations Drawables sur la façon de cadrer du contenu qui est placé à l’intérieur d’eux. Par exemple, un dessinable destiné à être le cadre d’un widget de bouton doit retourner le remplissage qui place correctement l’étiquette à l’intérieur de lui-même.

<li> La #setState méthode permet au client d’indiquer à drawable dans quel état il doit être dessiné, tel que « prioritaire », « sélectionné », etc. Certains dessinables peuvent modifier leur imagerie en fonction de l’état sélectionné.

<li> La #setLevel méthode permet au client de fournir un contrôleur continu unique qui peut modifier le dessinable s’affiche, tel qu’un niveau de batterie ou un niveau de progression. Certains dessinables peuvent modifier leur imagerie en fonction du niveau actuel.

<Li> A Drawable peut effectuer des animations en rappelant à son client via l’interface Callback . Tous les clients doivent prendre en charge cette interface (via #setCallback) afin que les animations fonctionnent. Un moyen simple de le faire consiste à utiliser les installations système telles que android.view.View#setBackground(Drawable) et android.widget.ImageView. </ul>

Bien qu’ils ne soient généralement pas visibles par l’application, les dessinables peuvent prendre diverses formes :

<ul><li><b>Bitmap</b> : le dessinable le plus simple, une image PNG ou JPEG. <li><b>Nine Patch</b> : une extension au format PNG lui permet de spécifier des informations sur la façon de l’étirer et de placer des éléments à l’intérieur. <li><b>Vector</b> : dessinable défini dans un fichier XML sous la forme d’un ensemble de points, de lignes et de courbes, ainsi que ses informations de couleur associées. Ce type de dessinable peut être mis à l’échelle sans perte de qualité d’affichage. <li><b>Shape</b> : contient des commandes de dessin simples au lieu d’une bitmap brute, ce qui lui permet de redimensionner mieux dans certains cas. <li><b>Layers</b> : un dessin composé, qui dessine plusieurs dessinables sous-jacents les uns sur les autres. <li><b>States</b> : un dessin composé qui sélectionne l’un d’un ensemble de tiroirs en fonction de son état. <li><b>Niveaux</b> : un dessin composé qui sélectionne l’un d’un ensemble de tiroirs en fonction de son niveau. <li><b>Scale</b> : dessin composé avec un seul tiroir enfant, dont la taille globale est modifiée en fonction du niveau actuel. </ul>

« Custom"><h3>Custom drawables</h3>

Toutes les versions d’Android permettent à la classe Drawable d’être étendue et utilisée au moment de l’exécution à la place de classes dessinables fournies par l’infrastructure. À compter de android.os.Build.VERSION_CODES#N API 24, les classes dessinables personnalisées peuvent également être utilisées en XML.

<>strong Remarque :</strong> Custom drawable classes sont accessibles uniquement à partir de votre package d’application. D’autres applications ne pourront pas les charger.

Au minimum, les classes dessinables personnalisées doivent implémenter les méthodes abstraites sur Drawable et doivent remplacer la méthode pour dessiner du Drawable#draw(Canvas) contenu.

Les classes dessinables personnalisées peuvent être utilisées en XML de plusieurs façons : <ul><li> Using the fully-qualified class name as the XML element name. Pour cette méthode, la classe dessinable personnalisée doit être une classe de niveau supérieur public.

&lt;com.myapp.MyCustomDrawable xmlns:android="http://schemas.android.com/apk/res/android"
                android:color="#ffff0000" /&gt;

</li li>>< Using <em>drawable</em> as the XML element name and specifying the fully-qualified class name from the <em>class</em> attribute. Cette méthode peut être utilisée pour les classes de niveau supérieur public et pour les classes internes statiques publiques.

&lt;drawable xmlns:android="http://schemas.android.com/apk/res/android"
                class="com.myapp.MyTopLevelClass$InnerCustomDrawable"
                android:color="#ffff0000" /&gt;

</li></ul>

<div class="special reference"><h3>Developer Guides</h3>

Pour plus d’informations sur l’utilisation de dessinables, lisez le guide du développeur Canevas et Dessinables . Pour plus d’informations et d’exemples de création de ressources dessinables (fichiers XML ou bitmap pouvant être chargés dans le code), lisez le document Ressources dessinables.

</Div>

Documentation Java pour android.graphics.drawable.Drawable.

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

Constructeurs

Drawable()

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

Drawable(IntPtr, JniHandleOwnership)

Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime.

Propriétés

Alpha

Obtient la valeur alpha actuelle pour le dessinable.

AutoMirrored

Indique si ce dessinable sera automatiquement mis en miroir lorsque sa direction de disposition est RTL de droite à gauche. -ou- Définissez si ce dessinable est automatiquement mis en miroir lorsque sa direction de disposition est RTL (de droite à gauche).

Bounds

Retourne les limites du dessinable Rect. -ou- Spécifiez un rectangle englobant pour le dessinable.

Callback

Retourne l’implémentation actuelle Callback attachée à ce dessinable.

ChangingConfigurations

Retourne un masque des paramètres de configuration pour lesquels ce dessinable peut changer, ce qui nécessite qu’il soit recréé. -ou- Définissez un masque des paramètres de configuration pour lesquels ce dessinable peut changer, ce qui nécessite qu’il soit recréé.

Class

Retourne la classe runtime de ce Object.

(Hérité de Object)
ColorFilter

Retourne le filtre de couleur actuel, ou null si aucun jeu n’est défini.

Current

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

DirtyBounds

Retourne les limites sales du tiroir Rect.

Handle

Handle de l’instance Android sous-jacente.

(Hérité de Object)
HasFocusStateSpecified

Indique si ce dessinable a au moins une spécification d’état spécifiant android.R.attr#state_focusedexplicitement .

IntrinsicHeight

Retourne la hauteur intrinsèque du dessinable.

IntrinsicWidth

Retourne la largeur intrinsèque du dessinable.

IsFilterBitmap

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

IsProjected

Indique si cette projection de demandes dessinables.

IsStateful

Indique si ce dessinable modifie son apparence en fonction de l’état.

IsVisible

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

JniIdentityHashCode

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
JniPeerMembers

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

LayoutDirection

Retourne la direction de disposition résolue pour ce dessinable.

Level

Récupérez le niveau actuel.

MinimumHeight

Retourne la hauteur minimale suggérée par ce dessinable.

MinimumWidth

Retourne la largeur minimale suggérée par ce dessinable.

Opacity

Retourne l’opacité/transparence de ce dessinable.

OpticalInsets

Retourne dans les ensembles d’ensembles de disposition suggérés par ce dessinable pour une utilisation avec les opérations d’alignement pendant la disposition.

PeerReference

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
ThresholdClass

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

ThresholdType

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

TransparentRegion

Retourne une région représentant la partie du dessinable entièrement transparente.

Méthodes

ApplyTheme(Resources+Theme)

Applique le thème spécifié à ce dessinable et à ses enfants.

CanApplyTheme()

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

ClearColorFilter()

Supprime le filtre de couleur pour ce dessinable.

Clone()

Crée et retourne une copie de cet objet.

(Hérité de Object)
CopyBounds()

Retourne une copie des limites du dessinable dans un nouveau Rect.

CopyBounds(Rect)

Retourne une copie des limites du dessinable dans le Rect spécifié (alloué par l’appelant).

CreateFromPath(String)

Créez un dessinable à partir du nom du chemin d’accès du fichier.

CreateFromPathAsync(String)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

CreateFromResourceStream(Resources, TypedValue, Stream, String)

Créez un dessinable à partir d’un flux d’entrée, en utilisant les ressources et la valeur données pour déterminer les informations de densité.

CreateFromResourceStream(Resources, TypedValue, Stream, String, BitmapFactory+Options)

Créez un dessinable à partir d’un flux d’entrée, en utilisant les ressources et la valeur données pour déterminer les informations de densité.

CreateFromResourceStreamAsync(Resources, TypedValue, Stream, String)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

CreateFromResourceStreamAsync(Resources, TypedValue, Stream, String, BitmapFactory+Options)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

CreateFromStream(Stream, String)

Créer un dessinable à partir d’un flux d’entrée

CreateFromStreamAsync(Stream, String)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

CreateFromXml(Resources, XmlReader)

Créez un dessinable à partir d’un document XML.

CreateFromXml(Resources, XmlReader, Resources+Theme)

Créez un dessinable à partir d’un document XML.

CreateFromXmlAsync(Resources, XmlReader)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

CreateFromXmlAsync(Resources, XmlReader, Resources+Theme)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

CreateFromXmlInner(Resources, XmlReader, IAttributeSet)

Créez à partir d’un document XML.

CreateFromXmlInner(Resources, XmlReader, IAttributeSet, Resources+Theme)

Créez à partir d’un document XML.

Dispose()

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
Dispose(Boolean)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
Draw(Canvas)

Dessinez dans ses limites (définies via setBounds) en respectant les effets facultatifs tels que alpha (défini via setAlpha) et le filtre de couleur (défini via setColorFilter).

Equals(Object)

Indique si un autre objet est « égal à » celui-ci.

(Hérité de Object)
GetConstantState()

Retourne une ConstantState instance qui contient l’état partagé de ce dessinable.

GetHashCode()

Retourne une valeur de code de hachage pour l'objet.

(Hérité de Object)
GetHotspotBounds(Rect)

Remplit les outRect limites du point d’accès.

GetOutline(Outline)

Appelé pour obtenir le dessinable pour remplir le contour qui définit sa zone de dessin.

GetPadding(Rect)

Retournez dans le remplissage des ensembles suggérés par ce dessinable pour placer du contenu à l’intérieur des limites du dessinable.

GetState()

Décrit l’état actuel, en tant qu’union d’états primitve, tels que android.R.attr#state_focused, android.R.attr#state_selectedetc.

Inflate(Resources, XmlReader, IAttributeSet)

Gonflez ce dessinable à partir d’une ressource XML.

Inflate(Resources, XmlReader, IAttributeSet, Resources+Theme)

Gonflez ce dessinable à partir d’une ressource XML.

InflateAsync(Resources, XmlReader, IAttributeSet)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

InflateAsync(Resources, XmlReader, IAttributeSet, Resources+Theme)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

InvalidateSelf()

Utilisez l’implémentation actuelle Callback pour que ce dessinable soit redessiné.

JavaFinalize()

Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet.

(Hérité de Object)
JumpToCurrentState()

Si ce dessinable effectue des animations de transition entre états, demandez-lui immédiatement de passer à l’état actuel et d’ignorer les animations actives.

Mutate()

Rendez ce mutable dessinable.

Notify()

Réveille un thread unique qui attend le moniteur de cet objet.

(Hérité de Object)
NotifyAll()

Réveille tous les threads qui attendent le moniteur de cet objet.

(Hérité de Object)
OnBoundsChange(Rect)

Remplacez cela dans votre sous-classe pour modifier l’apparence si vous variez en fonction des limites.

OnLayoutDirectionChanged(Int32)

Appelé lorsque la direction de disposition résolue du dessinable change.

OnLevelChange(Int32)

Remplacez cela dans votre sous-classe pour modifier l’apparence si vous variez en fonction du niveau.

OnStateChange(Int32[])

Remplacez cela dans votre sous-classe pour modifier l’apparence si vous reconnaissez l’état spécifié.

ResolveOpacity(Int32, Int32)

Retourne la valeur d’opacité appropriée pour deux opacités sources.

ScheduleSelf(Action, Int64)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

ScheduleSelf(IRunnable, Int64)

Utilisez l’implémentation actuelle Callback pour que ce dessinable soit planifié.

SetAlpha(Int32)

Spécifiez une valeur alpha pour le dessinable.

SetBounds(Int32, Int32, Int32, Int32)

Spécifiez un rectangle englobant pour le dessinable.

SetCallback(Drawable+ICallback)

Lier un Callback objet à cet objet Drawable.

SetColorFilter(Color, PorterDuff+Mode)

Spécifiez une couleur et un mode Porter-Duff comme filtre de couleur pour ce dessinable.

SetColorFilter(ColorFilter)

Spécifiez un filtre de couleur facultatif pour le dessinable.

SetDither(Boolean)

Définissez la valeur true pour que la trame dessinable ait ses couleurs lorsqu’elle est dessinée sur un appareil avec moins de 8 bits par composant de couleur.

SetFilterBitmap(Boolean)

Définissez la valeur true pour que le filtre dessinable de ses bitmaps avec échantillonnage biligne lorsqu’ils sont mis à l’échelle ou pivotés.

SetHandle(IntPtr, JniHandleOwnership)

Définit la propriété Handle.

(Hérité de Object)
SetHotspot(Single, Single)

Spécifie l’emplacement du point d’accès dans le tiroir.

SetHotspotBounds(Int32, Int32, Int32, Int32)

Définit les limites auxquelles le point d’accès est limité, s’ils doivent être différents des limites dessinables.

SetLayoutDirection(LayoutDirection)

Définissez la direction de disposition pour ce dessinable.

SetLevel(Int32)

Spécifiez le niveau du dessinable.

SetState(Int32[])

Spécifiez un ensemble d’états pour le dessinable.

SetTint(Int32)

Spécifie la couleur de teinte pour ce dessinable.

SetTintBlendMode(BlendMode)

Spécifie un mode de fusion de teintes pour ce dessinable.

SetTintList(ColorStateList)

Spécifie la couleur de teinte pour ce dessinable en tant que liste d’états de couleur.

SetTintMode(PorterDuff+Mode)

Spécifie un mode de fusion de teintes pour ce dessinable.

SetVisible(Boolean, Boolean)

Définissez si ce dessinable est visible.

ToArray<T>()

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
ToString()

Retourne une représentation de chaîne de l'objet.

(Hérité de Object)
UnregisterFromRuntime()

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
UnscheduleSelf(Action)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

UnscheduleSelf(IRunnable)

Utilisez l’implémentation actuelle Callback pour que ce dessinable soit non planifié.

Wait()

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<>

(Hérité de Object)
Wait(Int64)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti< par> em>ou <em>interrompu/em>,< ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)
Wait(Int64, Int32)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti< par> em>ou <em>interrompu/em>,< ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)

Implémentations d’interfaces explicites

IJavaPeerable.Disposed()

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
IJavaPeerable.DisposeUnlessReferenced()

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
IJavaPeerable.Finalized()

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
IJavaPeerable.JniManagedPeerState

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

(Hérité de Object)

Méthodes d’extension

JavaCast<TResult>(IJavaObject)

Effectue une conversion de type vérifiée par le runtime Android.

JavaCast<TResult>(IJavaObject)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

GetJniTypeName(IJavaPeerable)

Un dessinable est une abstraction générale pour « quelque chose qui peut être dessiné.

S’applique à