如何在 flutter 中保存上次阅读的 pdf 文件?

how to save last read of pdf file in flutter?

我正在使用 syncfusion_flutter_pdfviewer 包来阅读 pdf 文件。一切正常,但我想保存最后一次阅读,当用户第二天进入时,它会导致与昨天相同的页面。我该如何尝试?

SfPdfViewer页面导航支持PdfPageChangedCallback通知页面变化

页面改变回调 onPageChanged 回调在 SfPdfViewer.

页面改变时触发
    @override
Widget build(BuildContext context) {
  return Scaffold(
      body: SfPdfViewer.network(
    'https://cdn.syncfusion.com/content/PDFViewer/flutter-succinctly.pdf',
    onPageChanged: (PdfPageChangedDetails details) {
      print(details.newPageNumber);
      print(details.isFirstPage);
    },
  ));
}

syncfusionpdfviewer

您可以保留 sharedpreference.After 应用程序中回调的页码关闭并重新打开,或者您的逻辑检查共享首选项中的页码和 JumptoPage 该页码。 _pdfViewerController.jumpToPage(pagenumber)

跳转到页面

late PdfViewerController _pdfViewerController;

@override
void initState() {
  _pdfViewerController = PdfViewerController();
  super.initState();
}

@override
Widget build(BuildContext context) {
  return Scaffold(
    appBar: AppBar(
      title: Text('Syncfusion Flutter PdfViewer'),
      actions: <Widget>[
        IconButton(
          icon: Icon(
            Icons.arrow_drop_down_circle,
            color: Colors.white,
          ),
          onPressed: () {
            _pdfViewerController.jumpToPage(5);
          },
        ),
      ],
    ),
    body: SfPdfViewer.network(
      'https://cdn.syncfusion.com/content/PDFViewer/flutter-succinctly.pdf',
      controller: _pdfViewerController,
    ),
  );
}