Closed pishguy closed 5 years ago
how can i use this library for flutter dialogs?
import 'package:circular_reveal_animation/circular_reveal_animation.dart'; import 'package:flutter/material.dart'; void main() => runApp(MyApp()); class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'CRA Demo', theme: ThemeData( primarySwatch: Colors.blue, ), home: MyHomePage(), ); } } class MyHomePage extends StatefulWidget { @override _MyHomePageState createState() => _MyHomePageState(); } class _MyHomePageState extends State<MyHomePage> with SingleTickerProviderStateMixin { AnimationController animationController; Animation<double> animation; @override void initState() { super.initState(); animationController = AnimationController( vsync: this, duration: Duration(milliseconds: 1000), ); animation = CurvedAnimation( parent: animationController, curve: Curves.easeIn, ); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text("CRA Demo"), ), body: Padding( padding: const EdgeInsets.all(16.0), child: Center( child: CircularRevealAnimation( child: FutureBuilder( future: showDialog(), ), animation: animation, center: Offset(130, 100), // minRadius: 12, // maxRadius: 200, ), ), ), floatingActionButton: FloatingActionButton(onPressed: () { if (animationController.status == AnimationStatus.forward || animationController.status == AnimationStatus.completed) { animationController.reverse(); } else { animationController.forward(); } }), ); } Future<void> showDialog()async{ bool _fromTop = false; showGeneralDialog( barrierLabel: "Label", barrierDismissible: true, barrierColor: Colors.black.withOpacity(0.5), transitionDuration: Duration(milliseconds: 700), context: context, pageBuilder: (context, anim1, anim2) { return Align( alignment: _fromTop ? Alignment.topCenter : Alignment.bottomCenter, child: Container( height: 300, child: SizedBox.expand(child: FlutterLogo()), margin: EdgeInsets.only(top: 50, left: 12, right: 12, bottom: 50), decoration: BoxDecoration( color: Colors.white, borderRadius: BorderRadius.circular(40), ), ), ); }, transitionBuilder: (context, anim1, anim2, child) { return SlideTransition( position: Tween(begin: Offset(0, _fromTop ? -1 : 1), end: Offset(0, 0)).animate(anim1), child: child, ); }, ); } }
Example for dialogs is added in version 1.0.6.
how can i use this library for flutter dialogs?