PrintDocumentAdapter Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Classe base que fornece o conteúdo de um documento a ser impresso.
[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
- Herança
- Atributos
Comentários
Classe base que fornece o conteúdo de um documento a ser impresso.
<h3>Ciclo de< vida/h3>
<><ul li> Inicialmente, você receberá uma ligação para #onStart()
. Esse retorno de chamada pode ser usado para alocar recursos. </li><li> Em seguida, você receberá uma ou mais chamadas para #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
informá-lo de que os atributos de impressão (tamanho da página, densidade, etc.) foram alterados, dando a você a oportunidade de criar o layout do conteúdo para corresponder às novas restrições. </li>li Depois de cada chamada para #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
, você>< pode</forte> receber uma ligação para #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback)
pedir que você escreva um arquivo PDF com o conteúdo para páginas específicas.>< </li><li> Finalmente, você receberá uma ligação para #onFinish()
. Você pode usar esse retorno de chamada para liberar recursos alocados no #onStart()
. </li></ul>
O #onStart()
retorno de chamada é sempre a primeira chamada que você receberá e é útil para fazer uma configuração única ou alocação de recursos antes de imprimir. Você não receberá uma ligação subsequente aqui.
O #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
retorno de chamada requer que você esquematize o conteúdo com base no PrintAttributes
. A execução desse método não é considerada concluída até que você invoque um dos métodos na instância de retorno de chamada passada. Portanto, você não receberá uma chamada subsequente para qualquer outro método dessa classe até que a execução desse método seja concluída invocando um dos métodos de retorno de chamada.
O #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback)
requer que você renderize e grave o conteúdo de algumas páginas no destino fornecido. A execução desse método não é considerada concluída até que você invoque um dos métodos na instância de retorno de chamada passada. Portanto, você não receberá uma chamada subsequente para qualquer outro método dessa classe até que a execução desse método seja concluída invocando um dos métodos de retorno de chamada. Você nunca receberá uma sequência de uma ou mais chamadas para esse método sem uma chamada anterior para #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
o .
O #onFinish()
retorno de chamada é sempre a última chamada que você receberá e é útil para fazer uma limpeza única ou desalocação de recursos após a impressão. Você não receberá uma ligação subsequente aqui.
</p><h3>Implementação</h3>
As APIs definidas nessa classe são projetadas para permitir fazer parte ou todo o trabalho em um thread arbitrário. Por exemplo, se o conteúdo impresso não depender do estado da interface do usuário, ou seja, do que é mostrado na tela, você poderá descarregar todo o trabalho em um thread dedicado, tornando seu aplicativo interativo enquanto o trabalho de impressão está sendo executado. Observe que, embora sua atividade seja coberta pela interface do usuário de impressão do sistema e um usuário não possa interagir com ela, fazer o trabalho de impressão no thread do aplicativo principal pode afetar o desempenho de seus outros componentes do aplicativo, pois eles também são executados nesse thread.
Você também pode trabalhar em threads diferentes, por exemplo, se você imprimir o conteúdo da interface do usuário, você pode manipular #onStart()
e #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
no thread da interface do usuário (supondo que onStart inicializa os recursos necessários para o layout). Isso garantirá que a interface do usuário não seja alterada enquanto você estiver definindo o layout do conteúdo impresso. Então você pode manipular #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback)
e #onFinish()
em outro thread. Isso garantirá que o thread principal esteja ocupado por um período mínimo de tempo. Também isso pressupõe que você irá gerar o conteúdo impresso no #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)
qual não é obrigatório. Se você usar vários threads, será responsável pela sincronização adequada.
Documentação Java para android.print.PrintDocumentAdapter
.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.
Construtores
PrintDocumentAdapter() | |
PrintDocumentAdapter(IntPtr, JniHandleOwnership) |
Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo tempo de execução. |
Campos
ExtraPrintPreview |
Extra: mapeado para um valor booleano que é |
Propriedades
Class |
Retorna a classe de tempo de execução deste |
Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
JniIdentityHashCode |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
JniPeerMembers |
Classe base que fornece o conteúdo de um documento a ser impresso. |
PeerReference |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
ThresholdClass |
Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
ThresholdType |
Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
Métodos
Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
Dispose() |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
Dispose(Boolean) |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
Equals(Object) |
Indica se algum outro objeto é "igual" a este. (Herdado de Object) |
GetHashCode() |
Retorna um valor de código hash para o objeto. (Herdado de Object) |
JavaFinalize() |
Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto. (Herdado de Object) |
Notify() |
Ativa um único thread que está aguardando no monitor deste objeto. (Herdado de Object) |
NotifyAll() |
Ativa todos os threads que estão aguardando no monitor deste objeto. (Herdado de Object) |
OnFinish() |
Chamado quando a impressão termina. |
OnLayout(PrintAttributes, PrintAttributes, CancellationSignal, PrintDocumentAdapter+LayoutResultCallback, Bundle) |
Chamado quando os atributos de impressão (tamanho da página, densidade, etc.) foram alterados, dando a você a chance de esquematizar o conteúdo de forma que ele corresponda às novas restrições. |
OnStart() |
Chamado quando a impressão é iniciada. |
OnWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, PrintDocumentAdapter+WriteResultCallback) |
Chamado quando páginas específicas do conteúdo devem ser escritas na forma de um arquivo PDF para o descritor de arquivo dado. |
SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle. (Herdado de Object) |
ToArray<T>() |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
UnregisterFromRuntime() |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
Wait() |
Faz com que o thread atual aguarde até que ele seja ativado, normalmente sendo <em notificado</em> ou <em>interrompido</em>>. (Herdado de Object) |
Wait(Int64) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Implantações explícitas de interface
IJavaPeerable.Disposed() |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
IJavaPeerable.Finalized() |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
IJavaPeerable.JniManagedPeerState |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Classe base que fornece o conteúdo de um documento a ser impresso. (Herdado de Object) |
Métodos de Extensão
JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo verificada em tempo de execução do Android. |
JavaCast<TResult>(IJavaObject) |
Classe base que fornece o conteúdo de um documento a ser impresso. |
GetJniTypeName(IJavaPeerable) |
Classe base que fornece o conteúdo de um documento a ser impresso. |