다음을 통해 공유


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><> 다음으로, 인쇄 특성(페이지 크기, 밀도 등)이 변경되어 새 제약 조건과 일치하도록 콘텐츠를 레이아웃할 수 있는 기회를 제공하는 하나 이상의 호출 #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle) 을 받게 됩니다. </li li>>< 모든 호출 #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle)후, 당신은 <강한>수 / 강한> 특정 페이지에 대한 콘텐츠와 PDF 파일을 작성하도록 요청하는 호출 #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback) 을 받을 수 있습니다.< </li li><> Finally, You will receive a call to #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는 임의 스레드에서 일부 또는 모든 작업을 수행할 수 있도록 설계되었습니다. 예를 들어 인쇄된 콘텐츠가 UI 상태에 의존하지 않는 경우(예: 화면에 표시되는 내용에 따라) 전용 스레드에서 전체 작업을 오프로드하여 인쇄 작업이 수행되는 동안 애플리케이션을 대화형으로 만들 수 있습니다. 활동은 시스템 인쇄 UI에서 처리되고 사용자는 상호 작용할 수 없지만 주 애플리케이션 스레드에서 인쇄 작업을 수행하면 해당 스레드에서도 실행되므로 다른 애플리케이션 구성 요소의 성능에 영향을 줄 수 있습니다.

여러 스레드에서 작업을 수행할 수도 있습니다. 예를 들어 UI 콘텐츠를 인쇄하는 경우 UI 스레드를 처리 #onStart() 하고 #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle) 처리할 수 있습니다(onStart에서 레이아웃에 필요한 리소스를 초기화했다고 가정). 이렇게 하면 인쇄된 콘텐츠를 배치하는 동안 UI가 변경되지 않습니다. 그런 다음 다른 스레드에서 처리 #onWrite(PageRange[], ParcelFileDescriptor, CancellationSignal, WriteResultCallback)#onFinish() 수 있습니다. 이렇게 하면 주 스레드가 최소 시간 동안 사용 중입니다. 또한 필수가 아닌 인쇄된 콘텐츠를 #onLayout(PrintAttributes, PrintAttributes, CancellationSignal, LayoutResultCallback, Bundle) 생성한다고 가정합니다. 여러 스레드를 사용하는 경우 적절한 동기화를 담당합니다.

에 대한 android.print.PrintDocumentAdapterJava 설명서

이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.

생성자

PrintDocumentAdapter()
PrintDocumentAdapter(IntPtr, JniHandleOwnership)

JNI 개체의 관리되는 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다.

필드

ExtraPrintPreview

추가: 현재 레이아웃이 인쇄 미리 보기 false 용인 true 경우인 부울 값에 매핑됩니다. 그렇지 않은 경우

속성

Class

Object런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Handle

기본 Android 인스턴스에 대한 핸들입니다.

(다음에서 상속됨 Object)
JniIdentityHashCode

인쇄할 문서의 내용을 제공하는 기본 클래스입니다.

(다음에서 상속됨 Object)
JniPeerMembers

인쇄할 문서의 내용을 제공하는 기본 클래스입니다.

PeerReference

인쇄할 문서의 내용을 제공하는 기본 클래스입니다.

(다음에서 상속됨 Object)
ThresholdClass

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

ThresholdType

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

메서드

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()

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <알림을 받<>거나 <><중단/종료>합니다.>

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 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)

인쇄할 문서의 내용을 제공하는 기본 클래스입니다.

적용 대상