base_page.dart 960 B

12345678910111213141516171819202122232425262728293031323334353637
  1. import 'package:flutter/material.dart';
  2. import 'package:flutter/services.dart';
  3. import 'package:get/get.dart';
  4. import '../resource/colors.gen.dart';
  5. abstract class BasePage<T extends GetxController> extends GetView<T> {
  6. const BasePage({super.key});
  7. @override
  8. Widget build(BuildContext context) {
  9. return AnnotatedRegion<SystemUiOverlayStyle>(
  10. value: SystemUiOverlayStyle.light.copyWith(
  11. statusBarColor: Colors.transparent, // 设置状态栏颜色为透明
  12. statusBarIconBrightness: _getStatusBarDarkFont(),
  13. ),
  14. child: Container(
  15. color: backgroundColor(),
  16. child: buildBody(context),
  17. ),
  18. );
  19. }
  20. Brightness _getStatusBarDarkFont() {
  21. return statusBarDarkFont(true) ? Brightness.dark : Brightness.light;
  22. }
  23. bool statusBarDarkFont(bool isDark) {
  24. return isDark;
  25. }
  26. Widget? buildBody(BuildContext context);
  27. Color backgroundColor() {
  28. return ColorName.bgColorPrimary;
  29. }
  30. }