Drawable Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato.
[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
- Ereditarietà
- Derivato
- Attributi
Commenti
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato". Molto spesso si tratta di Drawable come tipo di risorsa recuperata per disegnare elementi sullo schermo; La classe Drawable fornisce un'API generica per gestire una risorsa visiva sottostante che può assumere diverse forme. A differenza di , android.view.Viewun oggetto Drawable non dispone di alcuna funzionalità per ricevere eventi o interagire in altro modo con l'utente.
Oltre a un semplice disegno, Drawable fornisce una serie di meccanismi generici che consentono al client di interagire con ciò che viene disegnato:
<ul><li> Il #setBounds metodo <var>deve</var> essere chiamato per indicare all'oggetto Drawable dove viene disegnato e quanto deve essere grande. Tutti i drawable devono rispettare le dimensioni richieste, spesso semplicemente ridimensionando le proprie immagini. Un client può trovare le dimensioni preferite per alcuni elementi Drawable con i #getIntrinsicHeight metodi e #getIntrinsicWidth .
<li> Il #getPadding metodo può restituire da alcune informazioni drawables su come incorniciare il contenuto inserito all'interno di essi. Ad esempio, un elemento Drawable destinato a essere il frame per un widget pulsante deve restituire la spaziatura interna che inserisce correttamente l'etichetta all'interno di se stessa.
<li> Il #setState metodo consente al client di indicare all'oggetto Drawable in quale stato deve essere disegnato, ad esempio "con stato attivo", "selezionato" e così via. Alcuni elementi drawable possono modificare le immagini in base allo stato selezionato.
<li> Il #setLevel metodo consente al client di fornire un singolo controller continuo in grado di modificare l'oggetto Drawable viene visualizzato, ad esempio un livello di batteria o di avanzamento. Alcuni elementi drawable possono modificare le immagini in base al livello corrente.
<li> A Drawable può eseguire animazioni richiamando il client tramite l'interfaccia Callback . Tutti i client devono supportare questa interfaccia (tramite #setCallback) in modo che le animazioni funzionino. Un modo semplice per eseguire questa operazione consiste nell'usare le strutture di sistema come android.view.View#setBackground(Drawable) e android.widget.ImageView. </ul>
Anche se in genere non è visibile all'applicazione, i drawable possono assumere una varietà di forme:
<ul><li><b>Bitmap</b>: il disegno più semplice, un'immagine PNG o JPEG. <li><b>Nine Patch</b>: un'estensione del formato PNG consente di specificare informazioni su come estenderlo e posizionare le cose all'interno di esso. <li><b Vector</b>>: un oggetto drawable definito in un file XML come set di punti, linee e curve insieme alle informazioni sul colore associate. Questo tipo di disegnabile può essere ridimensionato senza perdita di qualità dello schermo. <li><b Shape</b>>: contiene semplici comandi di disegno invece di una bitmap non elaborata, consentendogli di ridimensionare meglio in alcuni casi. <li><b>Layers</b>: un composto disegnabile, che disegna più disegnare sottostanti l'uno sopra l'altro. <li><b States</b>>: un composto drawable che seleziona uno di un set di drawable in base al relativo stato. <li><b>Levels</b>: un composto drawable che seleziona uno di un set di drawable in base al suo livello. <li><b>Scale</b>: un composto disegnabile con un singolo elemento figlio disegnabile, la cui dimensione complessiva viene modificata in base al livello corrente. </ul>
"Custom"><h3>Custom drawables</h3>
Tutte le versioni di Android consentono l'estensione e l'uso della classe Drawable in fase di esecuzione al posto delle classi drawable fornite dal framework. android.os.Build.VERSION_CODES#N API 24A partire da , le classi disegnabili personalizzate possono essere usate anche in XML.
<strong>Note:</strong> Classi disegnabili personalizzate sono accessibili solo dall'interno del pacchetto dell'applicazione. Altre applicazioni non saranno in grado di caricarle.
Come minimo, le classi disegnabili personalizzate devono implementare i metodi astratti in Drawable ed eseguire l'override del Drawable#draw(Canvas) metodo per disegnare il contenuto.
Le classi di disegno personalizzate possono essere usate in XML in diversi modi: <ul><li> Utilizzando il nome completo della classe come nome dell'elemento XML. Per questo metodo, la classe disegnabile personalizzata deve essere una classe di primo livello pubblico.
<com.myapp.MyCustomDrawable xmlns:android="http://schemas.android.com/apk/res/android"
android:color="#ffff0000" />
</li><li> Using <em>drawable</em> come nome dell'elemento XML e specificando il nome completo della classe dall'attributo <em>class</em> . Questo metodo può essere usato sia per le classi di primo livello pubblico che per le classi interne statiche pubbliche.
<drawable xmlns:android="http://schemas.android.com/apk/res/android"
class="com.myapp.MyTopLevelClass$InnerCustomDrawable"
android:color="#ffff0000" />
</li></ul>
<div class="special reference"><h3>Developer Guides</h3>
Per altre informazioni su come usare i drawable, vedere la guida per sviluppatori Canvas e Drawables . Per informazioni ed esempi di creazione di risorse disegnabili (file XML o bitmap che possono essere caricati nel codice), leggere il documento Risorse disegnabili.
</Div>
Documentazione java per android.graphics.drawable.Drawable.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.
Costruttori
| Drawable() |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| Drawable(IntPtr, JniHandleOwnership) |
Costruttore usato durante la creazione di rappresentazioni gestite di oggetti JNI; chiamato dal runtime. |
Proprietà
| Alpha |
Ottiene il valore alfa corrente per l'oggetto drawable. |
| AutoMirrored |
Indica se l'oggetto Drawable verrà automaticamente sottoposto a mirroring quando la direzione del layout è RTL da destra a sinistra. -oppure- Imposta se questa proprietà Drawable viene automaticamente con mirroring quando la direzione del layout è RTL (da destra a sinistra). |
| Bounds |
Restituisce i limiti dell'oggetto drawable Rect. -oppure- Specificare un rettangolo di delimitazione per l'oggetto Drawable. |
| Callback |
Restituisce l'implementazione corrente |
| ChangingConfigurations |
Restituisce una maschera dei parametri di configurazione per i quali può cambiare questo elemento drawable, richiedendo che venga ricreato. -oppure- Impostare una maschera dei parametri di configurazione per i quali questa modifica può essere modificata, richiedendo che venga ricreata. |
| Class |
Restituisce la classe di runtime di questo |
| ColorFilter |
Restituisce il filtro colore corrente o |
| Current |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| DirtyBounds |
Restituisce i limiti sporchi dell'oggetto disegnabile Rect. |
| Handle |
Handle per l'istanza di Android sottostante. (Ereditato da Object) |
| HasFocusStateSpecified |
Indica se questo oggetto drawable ha almeno una specifica di stato che specifica in modo esplicito |
| IntrinsicHeight |
Restituisce l'altezza intrinseca dell'oggetto drawable. |
| IntrinsicWidth |
Restituisce la larghezza intrinseca dell'oggetto drawable. |
| IsFilterBitmap |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| IsProjected |
Indica se questa proiezione di richieste disegnabili. |
| IsStateful |
Indica se questo elemento drawable cambierà l'aspetto in base allo stato. |
| IsVisible |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| JniIdentityHashCode |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| JniPeerMembers |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| LayoutDirection |
Restituisce la direzione del layout risolto per questo elemento Drawable. |
| Level |
Recuperare il livello corrente. |
| MinimumHeight |
Restituisce l'altezza minima suggerita da questo oggetto Drawable. |
| MinimumWidth |
Restituisce la larghezza minima suggerita da questo oggetto Drawable. |
| Opacity |
Restituisce l'opacità/trasparenza di questo elemento Drawable. |
| OpticalInsets |
Restituisce in imposta gli inset di layout suggeriti da questo elemento Drawable per l'uso con operazioni di allineamento durante il layout. |
| PeerReference |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| ThresholdClass |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. |
| ThresholdType |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. |
| TransparentRegion |
Restituisce un'area che rappresenta la parte dell'oggetto Drawable completamente trasparente. |
Metodi
| ApplyTheme(Resources+Theme) |
Applica il tema specificato a questo elemento Drawable e ai relativi elementi figlio. |
| CanApplyTheme() |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| ClearColorFilter() |
Rimuove il filtro colori per questo elemento disegnabile. |
| Clone() |
Crea e restituisce una copia di questo oggetto. (Ereditato da Object) |
| CopyBounds() |
Restituisce una copia dei limiti di drawable in un nuovo rect. |
| CopyBounds(Rect) |
Restituisce una copia dei limiti dell'oggetto drawable nell'oggetto Rect specificato (allocato dal chiamante). |
| CreateFromPath(String) |
Creare un elemento drawable dal nome del percorso del file. |
| CreateFromPathAsync(String) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| CreateFromResourceStream(Resources, TypedValue, Stream, String, BitmapFactory+Options) |
Creare un oggetto drawable da un flusso di input usando le risorse e il valore specificati per determinare le informazioni sulla densità. |
| CreateFromResourceStream(Resources, TypedValue, Stream, String) |
Creare un oggetto drawable da un flusso di input usando le risorse e il valore specificati per determinare le informazioni sulla densità. |
| CreateFromResourceStreamAsync(Resources, TypedValue, Stream, String, BitmapFactory+Options) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| CreateFromResourceStreamAsync(Resources, TypedValue, Stream, String) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| CreateFromStream(Stream, String) |
Creare un oggetto drawable da un flusso di input |
| CreateFromStreamAsync(Stream, String) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| CreateFromXml(Resources, XmlReader, Resources+Theme) |
Creare un oggetto drawable da un documento XML. |
| CreateFromXml(Resources, XmlReader) |
Creare un oggetto drawable da un documento XML. |
| CreateFromXmlAsync(Resources, XmlReader, Resources+Theme) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| CreateFromXmlAsync(Resources, XmlReader) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| CreateFromXmlInner(Resources, XmlReader, IAttributeSet, Resources+Theme) |
Crea dall'interno di un documento XML. |
| CreateFromXmlInner(Resources, XmlReader, IAttributeSet) |
Crea dall'interno di un documento XML. |
| Dispose() |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| Dispose(Boolean) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| Draw(Canvas) |
Disegnare nei limiti (impostati tramite setBounds) rispettando gli effetti facoltativi, ad esempio alfa (impostato tramite setAlpha) e il filtro colore (impostato tramite setColorFilter). |
| Equals(Object) |
Indica se un altro oggetto è "uguale a" questo. (Ereditato da Object) |
| GetConstantState() |
Restituisce un'istanza |
| GetHashCode() |
Restituisce un valore del codice hash per l'oggetto. (Ereditato da Object) |
| GetHotspotBounds(Rect) |
Popola |
| GetOutline(Outline) |
Chiamato per ottenere l'elemento drawable per popolare l'oggetto Outline che ne definisce l'area di disegno. |
| GetPadding(Rect) |
Restituisce in spaziatura interna gli inset suggeriti da questo elemento Drawable per posizionare il contenuto all'interno dei limiti di drawable. |
| GetState() |
Descrive lo stato corrente, come unione di stati primitve, ad esempio |
| Inflate(Resources, XmlReader, IAttributeSet, Resources+Theme) |
Gonfiare questo elemento drawable da una risorsa XML. |
| Inflate(Resources, XmlReader, IAttributeSet) |
Gonfiare questo elemento drawable da una risorsa XML. |
| InflateAsync(Resources, XmlReader, IAttributeSet, Resources+Theme) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| InflateAsync(Resources, XmlReader, IAttributeSet) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| InvalidateSelf() |
Utilizzare l'implementazione corrente |
| JavaFinalize() |
Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto . (Ereditato da Object) |
| JumpToCurrentState() |
Se l'oggetto Drawable esegue la transizione delle animazioni tra gli stati, chiedere di passare immediatamente allo stato corrente e ignorare le animazioni attive. |
| Mutate() |
Rendere questa modifica modificabile disegnabile. |
| Notify() |
Riattiva un singolo thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
| NotifyAll() |
Riattiva tutti i thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
| OnBoundsChange(Rect) |
Eseguire l'override di questa impostazione nella sottoclasse per modificare l'aspetto se si modifica in base ai limiti. |
| OnLayoutDirectionChanged(Int32) |
Chiamato quando cambia la direzione del layout risolto dell'oggetto drawable. |
| OnLevelChange(Int32) |
Eseguire l'override di questa impostazione nella sottoclasse per modificare l'aspetto se si modifica in base al livello. |
| OnStateChange(Int32[]) |
Eseguire l'override di questa classe nella sottoclasse per modificare l'aspetto se si riconosce lo stato specificato. |
| ResolveOpacity(Int32, Int32) |
Restituisce il valore di opacità appropriato per due opacità di origine. |
| ScheduleSelf(Action, Int64) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| ScheduleSelf(IRunnable, Int64) |
Utilizzare l'implementazione corrente |
| SetAlpha(Int32) |
Specificare un valore alfa per l'oggetto drawable. |
| SetBounds(Int32, Int32, Int32, Int32) |
Specificare un rettangolo di delimitazione per Drawable. |
| SetCallback(Drawable+ICallback) |
Associare un |
| SetColorFilter(Color, PorterDuff+Mode) |
Specificare un colore e la modalità Porter-Duff in modo che sia il filtro colori per questo disegnabile. |
| SetColorFilter(ColorFilter) |
Specificare un filtro colore facoltativo per l'elemento drawable. |
| SetDither(Boolean) |
Impostare su true per fare in modo che il ditherable disegnabile quando viene disegnato in un dispositivo con meno di 8 bit per ogni componente di colore. |
| SetFilterBitmap(Boolean) |
Impostare su true per fare in modo che il filtro disegnabile le bitmap con campionamento bilineare quando vengono ridimensionate o ruotate. |
| SetHandle(IntPtr, JniHandleOwnership) |
Imposta la proprietà Handle. (Ereditato da Object) |
| SetHotspot(Single, Single) |
Specifica la posizione dell'hotspot all'interno dell'oggetto drawable. |
| SetHotspotBounds(Int32, Int32, Int32, Int32) |
Imposta i limiti a cui è vincolato l'hotspot, se devono essere diversi dai limiti disegnabili. |
| SetLayoutDirection(LayoutDirection) |
Impostare la direzione del layout per questo elemento disegnabile. |
| SetLevel(Int32) |
Specificare il livello per l'elemento drawable. |
| SetState(Int32[]) |
Specificare un set di stati per l'oggetto drawable. |
| SetTint(Int32) |
Specifica il colore della tinta per questo elemento disegnabile. |
| SetTintBlendMode(BlendMode) |
Specifica una modalità di fusione della tinta per questo elemento drawable. |
| SetTintList(ColorStateList) |
Specifica il colore della tinta per questo elemento disegnabile come elenco di stati colore. |
| SetTintMode(PorterDuff+Mode) |
Specifica una modalità di fusione della tinta per questo elemento drawable. |
| SetVisible(Boolean, Boolean) |
Impostare se l'oggetto Drawable è visibile. |
| ToArray<T>() |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| ToString() |
Restituisce una rappresentazione di stringa dell'oggetto. (Ereditato da Object) |
| UnregisterFromRuntime() |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| UnscheduleSelf(Action) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| UnscheduleSelf(IRunnable) |
Utilizzare l'implementazione corrente |
| Wait() |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>. (Ereditato da Object) |
| Wait(Int64, Int32) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo>< una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
| Wait(Int64) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo>< una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
| IJavaPeerable.Disposed() |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| IJavaPeerable.DisposeUnlessReferenced() |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| IJavaPeerable.Finalized() |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| IJavaPeerable.JniManagedPeerState |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. (Ereditato da Object) |
Metodi di estensione
| JavaCast<TResult>(IJavaObject) |
Esegue una conversione del tipo di tipo controllato dal runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |
| GetJniTypeName(IJavaPeerable) |
Un drawable è un'astrazione generale per "qualcosa che può essere disegnato. |