news_getx/lib/global.dart

45 lines
1.5 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:get/get.dart';
import 'package:news_getx/data/services/config.dart';
import 'package:news_getx/data/services/storage.dart';
import 'package:news_getx/data/services/user.dart';
import 'package:news_getx/utils/loading.dart';
/// 全局静态数据
class Global {
/// 初始化
static Future init() async {
// 运行初始
WidgetsFlutterBinding.ensureInitialized();
// 设备方向
await SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
// 调整系统UI 因为appBar会覆盖这个设置 所以换了个地方设置
// setSystemUi();
// 初始化easyLoading
Loading();
await Get.putAsync<StorageService>(() => StorageService().init());
Get.put<ConfigService>(ConfigService());
Get.put<UserService>(UserService());
}
static void setSystemUi() {
if (GetPlatform.isAndroid) {
// android 状态栏为透明的沉浸
// TODO AppBar会覆盖这里的设置
SystemUiOverlayStyle systemUiOverlayStyle = SystemUiOverlayStyle(
statusBarColor: Colors.transparent,
statusBarBrightness: Brightness.light,
statusBarIconBrightness: Brightness.dark,
systemNavigationBarDividerColor: Colors.transparent,
systemNavigationBarColor: Colors.white,
systemNavigationBarIconBrightness: Brightness.dark,
);
SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle);
}
}
}