import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:flutter/services.dart'; import 'package:yumi/ui_kit/widgets/first_recharge/first_recharge_dialog.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: []); runApp(const FirstRechargeDialogPreviewApp()); } class FirstRechargeDialogPreviewApp extends StatelessWidget { const FirstRechargeDialogPreviewApp({super.key}); @override Widget build(BuildContext context) { return ScreenUtilInit( designSize: const Size(375, 812), minTextAdapt: true, splitScreenMode: true, builder: (_, child) => MaterialApp( debugShowCheckedModeBanner: false, builder: FlutterSmartDialog.init(), home: const _FirstRechargeDialogPreviewPage(), ), ); } } class _FirstRechargeDialogPreviewPage extends StatefulWidget { const _FirstRechargeDialogPreviewPage(); @override State<_FirstRechargeDialogPreviewPage> createState() => _FirstRechargeDialogPreviewPageState(); } class _FirstRechargeDialogPreviewPageState extends State<_FirstRechargeDialogPreviewPage> { bool _shown = false; @override void didChangeDependencies() { super.didChangeDependencies(); if (_shown) { return; } _shown = true; WidgetsBinding.instance.addPostFrameCallback((_) { if (!mounted) { return; } FirstRechargeDialog.show( context, data: FirstRechargeDialogData.mock(), onBuyNow: (_) {}, ); }); } @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.black, body: Image.asset( 'sc_images/first_recharge/preview_background.png', width: double.infinity, height: double.infinity, fit: BoxFit.cover, ), ); } }