我正在使用dart pdf library,并且我想在查看pdf时检测屏幕上的触摸。有没有办法做到这一点?为了查看pdf文件,我使用了PDFViewerScaffold
和创建文件的路径。我尝试用PDFViewerScaffold
和Listener
包装GestureDetector
,但是没有运气。
到目前为止,我的代码:
查看pdf文件:
class PdfViewerPage extends StatelessWidget {
final String path;
const PdfViewerPage({Key key, this.path}) : super(key: key);
@override
Widget build(BuildContext context) {
return PDFViewerScaffold(
path: path,
);
}
}
制作pdf文件:
final Document pdf = Document();
...
pdf.addPage(MultiPage(
pageFormat:
...
footer: (Context context) {
...
},
build: (Context context) => <Widget>[
...
...
任何帮助将不胜感激!
答案 0 :(得分:1)
前一段时间,我遇到了同样的问题,FlutterFullPdfViewer使用本机组件并将其封装在只能通过本机代码操作的FrameLayout(在android中)中。 我所做的是我分叉了项目,并添加了自己的实现。 在android部分中,您有一个在FlutterFullPdfViewerManager.java中调用的方法:
ItemsSource
您可以将其更改为:
void openPDF(String path) {
File file = new File(path);
pdfView.fromFile(file)
.enableSwipe(true)
.swipeHorizontal(false)
.enableDoubletap(true)
.defaultPage(0)
.load();
}
或者类似的东西,您还会发现在pdfView上可以做很多额外的事情,对您有帮助。