import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; import 'package:get/get.dart'; import 'package:syncfusion_flutter_core/theme.dart'; import 'package:syncfusion_flutter_pdfviewer/pdfviewer.dart';
class PdfViewer1 extends StatefulWidget { final Function cancelClick; final Function okeyClick; String tittle = "Anasayfa"; String link = "https://drive.google.com/uc?export=download&id=1BCoch1LQU9w_i6h8sqYFRVN-39OknQe_";
PdfViewer1({super.key, required this.tittle, required this.link, required this.cancelClick, required this.okeyClick});
@override State<PdfViewer1> createState() => _PdfViewer1State(); }
class _PdfViewer1State extends State<PdfViewer1> { bool _isloading = true; final GlobalKey<SfPdfViewerState> _pdfViewerKey = GlobalKey();
void _loadFile() async { _pdfViewerKey.currentState?.openBookmarkView(); setState(() { _isloading = false; }); }
@override void initState() { super.initState(); _loadFile(); }
final PdfViewerController _pdfViewerController = PdfViewerController();
@override Widget build(BuildContext context) { return SafeArea( child: Scaffold( appBar: AppBar( title: Text(widget.tittle), ), // body: _isloading? const Center( child: CircularProgressIndicator(),) // : SfPdfViewer.asset( 'assets/laplace.pdf', // key: _pdfViewerKey, // ),
body: Stack( children: [ _isloading ? Center(child: CircularProgressIndicator()) : SfPdfViewerTheme( data: SfPdfViewerThemeData( backgroundColor: Colors.white, ), child: Column( children: [ Expanded( child: SfPdfViewer.network( widget.link, key: _pdfViewerKey, controller: _pdfViewerController, onDocumentLoaded: (PdfDocumentLoadedDetails details) { // Sayfa yüklendikten sonra 2 saniye bekleyip padding'i ayarla Future.delayed(Duration(seconds: 2), () {}); }, ), ), Container( padding: EdgeInsets.only(left: 20, right: 20, bottom: 10), color: Colors.transparent, child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Expanded( flex: 1, child: ElevatedButton( onPressed: () { widget.cancelClick(); Navigator.pop(context); }, style: ElevatedButton.styleFrom( backgroundColor: Colors.red, padding: EdgeInsets.symmetric(vertical: 15.0), ), child: Text('İptal'), ), ), SizedBox(width: 16), // Boşluk ekledik Expanded( flex: 3, child: ElevatedButton( onPressed: () { widget.okeyClick(); Navigator.pop(context); }, style: ElevatedButton.styleFrom( backgroundColor: Colors.green, padding: EdgeInsets.symmetric(vertical: 15.0), ), child: Text('Onayla'), ), ), ], ), ), ], ), ), ], ), ), ); } }
|