main.dart 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import 'package:clean/resource/colors.gen.dart';
  2. import 'package:clean/router/app_pages.dart';
  3. import 'package:flutter/material.dart';
  4. import 'package:flutter_screenutil/flutter_screenutil.dart';
  5. import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
  6. import 'package:get/get_navigation/src/root/get_material_app.dart';
  7. import 'package:pull_to_refresh/pull_to_refresh.dart';
  8. void main() {
  9. runApp(const MyApp());
  10. }
  11. class MyApp extends StatelessWidget {
  12. const MyApp({super.key});
  13. @override
  14. Widget build(BuildContext context) {
  15. return ScreenUtilInit(
  16. designSize: const Size(360, 800),
  17. builder: (_, child) {
  18. return _buildMaterialApp();
  19. },
  20. );
  21. }
  22. _buildMaterialApp() {
  23. return RefreshConfiguration(
  24. headerBuilder: () =>
  25. const MaterialClassicHeader(color: ColorName.colorPrimary),
  26. // footerBuilder: () => ClassicFooter(
  27. // canLoadingText: StringName.loadingMore,
  28. // idleText: StringName.loadPullUp,
  29. // loadingText: StringName.loadingTxt,
  30. // noDataText: StringName.loadNoData,
  31. // failedText: StringName.loadFailed,
  32. // ),
  33. child: GetMaterialApp(
  34. onGenerateTitle: (_) => "clean",
  35. getPages: AppPage.pages,
  36. initialRoute: RoutePath.mainTab,
  37. initialBinding: AppBinding(),
  38. theme: ThemeData(
  39. useMaterial3: true,
  40. textSelectionTheme: const TextSelectionThemeData(
  41. cursorColor: ColorName.colorPrimary, // 设置默认光标颜色
  42. selectionHandleColor: ColorName.colorPrimary, // 设置光标下面水滴的颜色
  43. ),
  44. ),
  45. navigatorObservers: [FlutterSmartDialog.observer],
  46. builder: FlutterSmartDialog.init(),
  47. supportedLocales: const [
  48. Locale('zh', 'CN'), // 支持的语言和地区
  49. ],
  50. // 你的翻译
  51. locale: const Locale('zh', 'CN'),
  52. // 将会按照此处指定的语言翻译 添加一个回调语言选项,以备上面指定的语言翻译不存在
  53. fallbackLocale: const Locale('zh', 'CN'),
  54. ),
  55. );
  56. }
  57. }