PrintDocumentAdapter 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.
Classe base che fornisce il contenuto di un documento da stampare.
[Android.Runtime.Register("android/print/PrintDocumentAdapter", DoNotGenerateAcw=true)]
public abstract class PrintDocumentAdapter : Java.Lang.Object
[<Android.Runtime.Register("android/print/PrintDocumentAdapter", DoNotGenerateAcw=true)>]
type PrintDocumentAdapter = class
inherit Object
- Ereditarietà
- Attributi
Commenti
Classe base che fornisce il contenuto di un documento da stampare.
<h3>Lifecycle</h3>
<ul><li> inizialmente, si riceverà una chiamata a #onStart()
. Questo callback può essere usato per allocare risorse. </li li><> Next, si otterranno una o più chiamate per #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
informare l'utente che gli attributi di stampa (dimensioni della pagina, densità e così via) sono stati modificati, offrendo la possibilità di layout del contenuto in modo che corrispondano ai nuovi vincoli. </li><li> Dopo ogni chiamata a #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
, si <può/forte><> ottenere una chiamata a chiedere di #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback)
scrivere un file PDF con il contenuto per pagine specifiche. </li><li> Finally, si riceverà una chiamata a #onFinish()
. È possibile usare questo callback per rilasciare le risorse allocate in #onStart()
. </li></ul>
Il #onStart()
callback è sempre la prima chiamata che riceverai ed è utile per eseguire una sola volta l'installazione o l'allocazione delle risorse prima della stampa. Non riceverai una chiamata successiva qui.
Il #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
callback richiede il layout del contenuto in base all'oggetto corrente PrintAttributes
. L'esecuzione di questo metodo non viene considerata completata fino a quando non si richiama uno dei metodi nell'istanza di callback passata. Di conseguenza, non si riceverà una chiamata successiva a nessun altro metodo di questa classe fino al completamento dell'esecuzione di questo metodo richiamando uno dei metodi di callback.
Richiede #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback)
il rendering e la scrittura del contenuto di alcune pagine nella destinazione specificata. L'esecuzione di questo metodo non viene considerata completa fino a quando non si richiama uno dei metodi nell'istanza di callback passata. Di conseguenza, non si riceverà una chiamata successiva a nessun altro metodo di questa classe fino al completamento dell'esecuzione di questo metodo richiamando uno dei metodi di callback. Non si riceverà mai una sequenza di una o più chiamate a questo metodo senza una chiamata precedente a #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
.
Il #onFinish()
callback è sempre l'ultima chiamata che riceverai ed è utile per eseguire una sola volta la pulizia o la deallocazione delle risorse dopo la stampa. Non riceverai una chiamata successiva qui.
</p><h3>Implementazione</h3>
Le API definite in questa classe sono progettate per consentire l'esecuzione di parte o di tutto il lavoro su un thread arbitrario. Ad esempio, se il contenuto stampato non dipende dallo stato dell'interfaccia utente, ovvero da ciò che viene visualizzato sullo schermo, è possibile eseguire l'offload dell'intero lavoro su un thread dedicato, rendendo l'applicazione interattiva mentre viene eseguita la stampa. Si noti che mentre l'attività è coperta dall'interfaccia utente di stampa di sistema e un utente non può interagire con esso, l'esecuzione del lavoro di stampa sul thread dell'applicazione principale può influire sulle prestazioni degli altri componenti dell'applicazione mentre vengono eseguiti anche su tale thread.
È anche possibile lavorare su thread diversi, ad esempio se si stampa il contenuto dell'interfaccia utente, è possibile gestire #onStart()
e #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
sul thread dell'interfaccia utente (presupponendo che onStart inizializzi le risorse necessarie per il layout). In questo modo si garantisce che l'interfaccia utente non cambi durante la disposizione del contenuto stampato. È quindi possibile gestire #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback)
e #onFinish()
su un altro thread. In questo modo si garantisce che il thread principale sia occupato per una quantità minima di tempo. Inoltre, si presuppone che si genererà il contenuto stampato in #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
cui non è obbligatorio. Se si usano più thread, si è responsabili della corretta sincronizzazione.
Documentazione java per android.print.PrintDocumentAdapter
.
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
PrintDocumentAdapter() | |
PrintDocumentAdapter(IntPtr, JniHandleOwnership) |
Costruttore usato durante la creazione di rappresentazioni gestite di oggetti JNI; chiamato dal runtime. |
Campi
ExtraPrintPreview |
Extra: mappato a un valore booleano che è |
Proprietà
Class |
Restituisce la classe di runtime di questo |
Handle |
Handle per l'istanza di Android sottostante. (Ereditato da Object) |
JniIdentityHashCode |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
JniPeerMembers |
Classe base che fornisce il contenuto di un documento da stampare. |
PeerReference |
Classe base che fornisce il contenuto di un documento da stampare. (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. |
Metodi
Clone() |
Crea e restituisce una copia di questo oggetto. (Ereditato da Object) |
Dispose() |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
Dispose(Boolean) |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
Equals(Object) |
Indica se un altro oggetto è "uguale a" questo. (Ereditato da Object) |
GetHashCode() |
Restituisce un valore del codice hash per l'oggetto. (Ereditato da Object) |
JavaFinalize() |
Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto . (Ereditato da Object) |
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) |
OnFinish() |
Chiamato al termine della stampa. |
OnLayout(PrintAttributes, PrintAttributes, CancellationSignal, PrintDocumentAdapter+LayoutResultCallback, Bundle) |
Viene chiamato quando gli attributi di stampa (dimensioni della pagina, densità e così via) hanno dato la possibilità di layout del contenuto in modo che corrisponda ai nuovi vincoli. |
OnStart() |
Chiamato all'avvio della stampa. |
OnWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, PrintDocumentAdapter+WriteResultCallback) |
Chiamato quando pagine specifiche del contenuto devono essere scritte sotto forma di file PDF nel descrittore di file specificato. |
SetHandle(IntPtr, JniHandleOwnership) |
Imposta la proprietà Handle. (Ereditato da Object) |
ToArray<T>() |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
ToString() |
Restituisce una rappresentazione di stringa dell'oggetto. (Ereditato da Object) |
UnregisterFromRuntime() |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
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) |
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, 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) |
Implementazioni dell'interfaccia esplicita
IJavaPeerable.Disposed() |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
IJavaPeerable.Finalized() |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
IJavaPeerable.JniManagedPeerState |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Classe base che fornisce il contenuto di un documento da stampare. (Ereditato da Object) |
Metodi di estensione
JavaCast<TResult>(IJavaObject) |
Esegue una conversione del tipo di tipo controllato dal runtime Android. |
JavaCast<TResult>(IJavaObject) |
Classe base che fornisce il contenuto di un documento da stampare. |
GetJniTypeName(IJavaPeerable) |
Classe base che fornisce il contenuto di un documento da stampare. |