Guides
概述
通过事件与通知同步应用状态、触发自定义工作流,或替换部分 SDK 内置 UI 行为。
Flutter SDK 通过两种方式暴露事件:
- 阅读器回调: 创建
CPDFReaderWidget时直接传入回调。适用于 Reader 生命周期、查看器 UI、属性弹窗、自定义菜单、注释点击拦截和表单 Widget 点击拦截。 - 监听事件: Reader 创建后,通过
CPDFReaderWidgetController.addEventListener()注册。适用于注释、表单和内容编辑对象的生命周期事件。
事件总览
| 分类 | API | 触发时机 |
|---|---|---|
| 查看器 | onPageChanged | 当前页面变化 |
| 查看器 | onSaveCallback | 文档保存完成 |
| 查看器 | onFillScreenChanged | 全屏状态变化 |
| 查看器 | onTapMainDocAreaCallback | 点击 PDF 主页面区域 |
| 查看器 | onPageEditDialogBackPress | 点击页面编辑弹窗返回按钮 |
| 查看器 | onIOSClickBackPressed | 点击 iOS Reader 左上角返回按钮 |
| 查看器 | onSearchBackButtonTappedCallback | 点击搜索界面返回按钮 |
| 查看器 | onAddWatermarkDialogDismissedCallback | 添加水印弹窗关闭 |
| 注释 | onAnnotationCreationPreparedCallback | 准备创建签名、图章、超链接、图片或 Note 注释 |
| 注释 | onAnnotationStyleDialogDismissedCallback | 注释属性弹窗关闭 |
| 注释 | onInterceptAnnotationActionCallback | 开启拦截后点击已有 Note 或 Link 注释 |
| 注释 | CPDFEvent.annotationsCreated | 注释创建 |
| 注释 | CPDFEvent.annotationsSelected | 注释被选中 |
| 注释 | CPDFEvent.annotationsDeselected | 注释取消选中 |
| 注释 | CPDFEvent.pencilDrawingCompleted | iOS Pencil 绘制完成 |
| 注释 | CPDFEvent.pencilDrawingDiscarded | iOS Pencil 绘制被放弃 |
| 表单 | onFormStyleDialogDismissedCallback | 表单属性弹窗关闭 |
| 表单 | onInterceptWidgetActionCallback | 开启拦截后点击已配置的表单 Widget |
| 表单 | CPDFEvent.formFieldsCreated | 表单字段创建 |
| 表单 | CPDFEvent.formFieldsSelected | 表单字段被选中 |
| 表单 | CPDFEvent.formFieldsDeselected | 表单字段取消选中 |
| 内容编辑 | onContentEditorStyleDialogDismissedCallback | 内容编辑属性弹窗关闭 |
| 内容编辑 | CPDFEvent.editorSelectionSelected | 可编辑内容被选中 |
| 内容编辑 | CPDFEvent.editorSelectionDeselected | 可编辑内容取消选中 |
| 自定义上下文菜单 | onCustomContextMenuItemTappedCallback | 点击自定义上下文菜单项 |
| 自定义工具栏菜单 | onCustomToolbarItemTappedCallback | 点击自定义工具栏项 |
指南
查看器 监听页面变化、文档保存、全屏切换、返回按钮点击等查看器 UI 事件。
注释 监听注释创建、属性弹窗、点击拦截、选中状态和 iOS Pencil 绘制事件。
表单 监听表单字段属性弹窗、创建、选中和取消选中事件。
内容编辑 监听内容编辑属性弹窗和可编辑内容选中事件。
自定义上下文菜单 监听自定义上下文菜单项点击事件。
自定义工具栏菜单 监听顶部工具栏自定义菜单项点击事件。
自定义 Note 注释创建弹窗 关闭创建 Note 后的默认编辑弹窗,并展示自定义 Flutter 编辑 UI。