home_controller.dart 766 B

12345678910111213141516171819202122232425262728293031
  1. import 'package:common_pub/ui/history_detail/trace_bar.dart';
  2. import 'package:flutter/material.dart';
  3. import 'package:get/get.dart';
  4. abstract class HomeController extends GetxController
  5. with GetTickerProviderStateMixin {
  6. final selectMapName = ''.obs;
  7. late final TabController tabController;
  8. late final traceController = TraceBarController();
  9. int get initTabIdx => 1;
  10. List<HomeTab> get tabs;
  11. @override
  12. void onInit() {
  13. super.onInit();
  14. tabController = TabController(
  15. length: tabs.length, initialIndex: initTabIdx, vsync: this);
  16. }
  17. @override
  18. void onClose() {
  19. super.onClose();
  20. tabController.dispose();
  21. }
  22. }
  23. class HomeTab {
  24. HomeTab(this.title, this.builder);
  25. final String title;
  26. final Widget Function() builder;
  27. }