Guides
查看器
ComPDF Flutter SDK 通过 CPDFReaderWidget 提供 阅读器级回调。你可以使用这些回调处理查看器生命周期和 UI 事件。
可用回调
| 回调 | 触发时机 | 返回值 |
|---|---|---|
onPageChanged | 当前页面变化 | int pageIndex |
onSaveCallback | 文档保存完成 | 无返回值 |
onFillScreenChanged | 全屏状态变化 | bool isFullScreen |
onTapMainDocAreaCallback | 用户点击 PDF 主页面区域 | 无返回值 |
onPageEditDialogBackPress | 用户点击页面编辑弹窗返回按钮 | 无返回值 |
onIOSClickBackPressed | 点击 iOS Reader 左上角返回按钮 | 无返回值 |
onSearchBackButtonTappedCallback | 用户点击搜索界面返回按钮 | 无返回值 |
onAddWatermarkDialogDismissedCallback | 添加水印弹窗关闭 | 无返回值 |
示例
dart
CPDFReaderWidget(
document: documentPath,
configuration: configuration,
onCreated: (controller) {
// 如后续需要注册监听事件,请保存 controller。
},
onPageChanged: (int pageIndex) {
debugPrint('当前页面: $pageIndex');
},
onSaveCallback: () {
debugPrint('文档保存成功');
},
onFillScreenChanged: (bool isFullScreen) {
debugPrint('是否全屏: $isFullScreen');
},
onTapMainDocAreaCallback: () {
debugPrint('点击了 PDF 主页面区域');
},
onPageEditDialogBackPress: () {
debugPrint('点击了页面编辑弹窗返回按钮');
},
onIOSClickBackPressed: () {
debugPrint('点击了 iOS 返回按钮');
},
onSearchBackButtonTappedCallback: () {
debugPrint('点击了搜索返回按钮');
},
onAddWatermarkDialogDismissedCallback: () {
debugPrint('添加水印弹窗已关闭');
},
);注意事项
onSearchBackButtonTappedCallback适合在 Flutter 层管理搜索状态时使用。onAddWatermarkDialogDismissedCallback会在添加水印面板关闭后触发,可用于恢复自定义 UI 状态或刷新水印相关控件。