Поделиться через


PrintDocumentAdapter Класс

Определение

Базовый класс, предоставляющий содержимое документа для печати.

[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
Наследование
PrintDocumentAdapter
Атрибуты

Комментарии

Базовый класс, предоставляющий содержимое документа для печати.

<жизненный цикл< h3/h3>>

<ul><li> Первоначально вы получите звонок #onStart(). Этот обратный вызов можно использовать для выделения ресурсов. </li li><> Next вы получите один или несколько вызовов, чтобы #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle) сообщить вам, что атрибуты печати (размер страницы, плотность и т. д.) позволяют вам макетировать содержимое в соответствии с новыми ограничениями. </li li>>< После каждого вызова#onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle), вы <можете< /strong>> получить вызов, чтобы #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback) попросить вас написать PDF-файл с содержимым для определенных страниц. </li li><>, наконец, вы получите звонок.#onFinish() Этот обратный вызов можно использовать для выпуска ресурсов, выделенных в #onStart(). </li></ul>

Обратный #onStart() вызов всегда является первым вызовом, который вы получите и полезен для выполнения однократной настройки или выделения ресурсов перед печатью. Вы не получите последующий звонок здесь.

Обратный #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle) вызов требует макета содержимого на основе текущего PrintAttributes. Выполнение этого метода не считается завершенным до вызова одного из методов в переданном экземпляре обратного вызова. Таким образом, вы не получите последующий вызов любого другого метода этого класса, пока выполнение этого метода не будет завершено путем вызова одного из методов обратного вызова.

Требует #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback) отрисовки и записи содержимого некоторых страниц в указанное место назначения. Выполнение этого метода не считается завершенным, пока не вызовите один из методов в переданном экземпляре обратного вызова. Таким образом, вы не получите последующий вызов любого другого метода этого класса, пока выполнение этого метода не будет завершено путем вызова одного из методов обратного вызова. Вы никогда не будете получать последовательность одного или нескольких вызовов этого метода без предыдущего вызова #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle).

Обратный #onFinish() вызов всегда является последним вызовом, который вы получите и полезно для выполнения однократной очистки или размещения ресурсов после печати. Вы не получите последующий звонок здесь.

</p><h3 Реализация</h3>>

API, определенные в этом классе, предназначены для выполнения части или всей работы в произвольном потоке. Например, если печатное содержимое не зависит от состояния пользовательского интерфейса, т. е. от того, что отображается на экране, вы можете выгрузить всю работу в выделенном потоке, что позволяет приложению интерактивно работать во время выполнения печати. Обратите внимание, что в то время как действие распространяется на пользовательский интерфейс печати системы и пользователь не может взаимодействовать с ним, выполнение печати в основном потоке приложения может повлиять на производительность других компонентов приложения, так как они также выполняются в этом потоке.

Вы также можете работать над различными потоками, например при печати содержимого пользовательского интерфейса, можно обрабатывать #onStart() и #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle) в потоке пользовательского интерфейса (если при условии, что onStart инициализирует ресурсы, необходимые для макета). Это гарантирует, что пользовательский интерфейс не изменяется во время размещения печатного содержимого. Затем можно обрабатывать #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback) и #onFinish() на другом потоке. Это гарантирует, что основной поток занят в течение минимального времени. Кроме того, предполагается, что будет создано печатное содержимое, в #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle) котором не обязательно. Если вы используете несколько потоков, вы несете ответственность за правильную синхронизацию.

Документация по Java для android.print.PrintDocumentAdapter.

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Конструкторы

PrintDocumentAdapter()
PrintDocumentAdapter(IntPtr, JniHandleOwnership)

Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения.

Поля

ExtraPrintPreview

Дополнительно: сопоставлено с логическим значением, то true есть если текущий макет предназначен для предварительного просмотра печати, false в противном случае.

Свойства

Class

Возвращает класс среды выполнения этого Objectобъекта.

(Унаследовано от Object)
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
JniPeerMembers

Базовый класс, предоставляющий содержимое документа для печати.

PeerReference

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
ThresholdClass

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

ThresholdType

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

Методы

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
Dispose()

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
Dispose(Boolean)

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
Equals(Object)

Указывает, равен ли другой объект этому объекту.

(Унаследовано от Object)
GetHashCode()

Возвращает значение хэш-кода для объекта.

(Унаследовано от Object)
JavaFinalize()

Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет.

(Унаследовано от Object)
Notify()

Пробуждение одного потока, ожидающего монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Просыпает все потоки, ожидающие монитора этого объекта.

(Унаследовано от Object)
OnFinish()

Вызывается при завершении печати.

OnLayout(PrintAttributes, PrintAttributes, CancellationSignal, PrintDocumentAdapter+LayoutResultCallback, Bundle)

Вызывается, когда атрибуты печати (размер страницы, плотность и т. д.) дают возможность макетировать содержимое таким образом, чтобы оно соответствовало новым ограничениям.

OnStart()

Вызывается при запуске печати.

OnWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, PrintDocumentAdapter+WriteResultCallback)

Вызывается, когда определенные страницы содержимого должны быть записаны в виде PDF-файла в заданный дескриптор файла.

SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
ToArray<T>()

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
UnregisterFromRuntime()

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
Wait()

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>помощи уведомления</em> или <эм>прерванного</em>.

(Унаследовано от Object)
Wait(Int64)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)
Wait(Int64, Int32)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)

Явные реализации интерфейса

IJavaPeerable.Disposed()

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
IJavaPeerable.DisposeUnlessReferenced()

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
IJavaPeerable.Finalized()

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
IJavaPeerable.JniManagedPeerState

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Базовый класс, предоставляющий содержимое документа для печати.

(Унаследовано от Object)

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверяемого средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Базовый класс, предоставляющий содержимое документа для печати.

GetJniTypeName(IJavaPeerable)

Базовый класс, предоставляющий содержимое документа для печати.

Применяется к