Condividi tramite


PrintDocumentAdapter Classe

Definizione

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à
PrintDocumentAdapter
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 è true se il layout corrente è per un'anteprima di stampa, false in caso contrario.

Proprietà

Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
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.

Si applica a