import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:zy_wms_pda/theme/light_theme.dart'; import 'package:zy_wms_pda/theme/theme_controller.dart'; import 'package:zy_wms_pda/utile/i18n/en_US.dart'; import 'package:zy_wms_pda/utile/i18n/zh_CN.dart'; import 'getX/get_pages.dart'; void main() { runApp( ScreenUtilInit( designSize: Size(1260, 2720), // 设计稿的宽高尺寸 minTextAdapt: true, // 保证字体根据最小适配 splitScreenMode: true, // 支持分屏模式 builder: (context, child) { return MyApp(); // 保证ScreenUtil初始化后才加载MyApp }, ), ); SystemChrome.setPreferredOrientations([ // DeviceOrientation.landscapeLeft, // 横屏左 // DeviceOrientation.landscapeRight, // 横屏右 DeviceOrientation.portraitUp, // 竖屏上 DeviceOrientation.portraitDown, // 竖屏下 ]); } class MyApp extends StatelessWidget { final ThemeController themeController = Get.put(ThemeController()); @override Widget build(BuildContext context) { return Obx(() { // 设置系统手势条颜色 SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle( statusBarColor: Colors.transparent, // 状态栏颜色 systemNavigationBarColor: themeController.bottomNavBarColor, // 底部导航条颜色 systemNavigationBarIconBrightness: themeController.isDarkMode.value ? Brightness.light : Brightness.dark, // 图标亮度 )); return GetMaterialApp( debugShowCheckedModeBanner: false, // translations: AppTranslations (), // 注册翻译 // locale: Locale('en','US'), theme: themeController.isDarkMode.value ? ThemeData.dark() : LightTheme.customLightTheme, initialRoute: '/', getPages: pages, ); }); } } class HomeScreen extends StatelessWidget { final ThemeController themeController = Get.find(); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('GetX Theme Example'), ), body: Center( child: ElevatedButton( onPressed: () { themeController.toggleTheme(); }, child: Text('切换主题'), ), ), ); } } class AppTranslations extends Translations { @override Map> get keys => { 'zh_CN': zhCN, 'en_US': enUS, }; }