1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- import 'package:flutter/material.dart';
- import 'package:kmpdfkit_demo/widgets/compdfkit/compdfkit_widget.dart';
- import 'package:kmpdfkit_demo/widgets/config.dart';
- import 'package:kmpdfkit_demo/widgets/events.dart';
- import 'package:kmpdfkit_demo/widgets/page_routes.dart';
- import '../function/pdf_buttom_annot_fun_widget.dart';
- class PDFPageWidget extends StatefulWidget {
- final String? documentPath;
- const PDFPageWidget({Key? key, this.documentPath}) : super(key: key);
- @override
- State<PDFPageWidget> createState() => _PDFPageWidgetState();
- }
- class _PDFPageWidgetState extends State<PDFPageWidget> {
- bool _fullScreen = false;
- bool isInit = false;
- @override
- Widget build(BuildContext context) {
- return Scaffold(
- body: Stack(
- children: [
- SafeArea(
- child: ComPDFKitWidget(
- documentPath: widget.documentPath,
- configuration: applyNormalConfiguration(),
- onComPDFKitWidgetCreate: () {
- setState(() {
- isInit = true;
- });
- setReaderViewCallbackListener(onTapMainDocArea: () {
- setState(() {
- _fullScreen = !_fullScreen;
- });
- });
- },
- )),
- Builder(builder: (context) {
- return Positioned(
- top: 0,
- left: 0,
- right: 0,
- child: AnimatedOpacity(
- opacity: _fullScreen ? 0.0 : 1.0,
- duration: const Duration(milliseconds: 200),
- child: AppBar(
- actions: [
- IconButton(
- onPressed: () {
- Navigator.pushNamed(context, PageRoutes.settings);
- },
- icon: const Icon(Icons.more_vert))
- ],
- )));
- }),
- Positioned(
- bottom: 0,
- left: 0,
- right: 0,
- child: AnimatedOpacity(
- opacity: _fullScreen ? 0.0 : 1.0,
- duration: const Duration(milliseconds: 200),
- child: isInit
- ? const PDFButtonAnnotFunWidget()
- : Container(
- color: const Color(0xFFEFF4FD),
- width: double.infinity,
- height: 60))),
- ],
- ),
- );
- }
- }
|