Annotation events and notifications
In Nutrient Android SDK, annotation events are accessible through the PdfFragment
. There, you can find the following listeners for subscription:
Listener | Description |
---|---|
OnAnnotationCreationModeChangeListener |
Listener for annotation creation mode enter/exit. |
OnAnnotationCreationModeSettingsChangeListener |
Listener for annotation creation mode settings changes. |
OnAnnotationEditingModeChangeListener |
Listener for annotation editing mode enter/exit. |
OnAnnotationSelectedListener |
Listener for annotation selection/deselection. |
Most use cases should be covered by these listeners, and they can be used as such:
override fun onCreate(savedInstanceState : Bundle?) { super.onCreate(savedInstanceState) pdfFragment.addOnAnnotationSelectedListener(object :OnAnnotationSelectedListener { override fun onPrepareAnnotationSelection(controller: AnnotationSelectionController, annotation: Annotation, annotationCreated: Boolean): Boolean { // Returning `false` here would prevent the annotation from being selected. return true } override fun onAnnotationSelected(annotation: Annotation, annotationCreated: Boolean) { Log.i(TAG, "The annotation was selected.") } override fun onAnnotationDeselected(annotation: Annotation, reselected: Boolean) { Log.i(TAG, "The annotation was deselected.") } }) pdfFragment.addOnAnnotationUpdatedListener(object: OnAnnotationUpdatedListener { override fun onAnnotationCreated(annotation: Annotation) { Log.i(TAG, "The annotation was created.") } override fun onAnnotationUpdated(annotation: Annotation) { Log.i(TAG, "The annotation was updated.") } override fun onAnnotationRemoved(annotation: Annotation) { Log.i(TAG, "The annotation was removed.") } }) }
For more information on editing annotations and reacting to changes, please see our how to detect annotation changes guide.