import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:wallpaper/modules/favorite/favorite_view.dart'; import 'package:wallpaper/modules/home/home_view.dart'; import 'package:wallpaper/modules/me/me_view.dart'; class RootController extends GetxController { static RootController get to => Get.find(); final pages = [ PageItem('Home', Icons.home, const HomeView()), PageItem('Favorite', Icons.favorite, const FavoriteView()), PageItem('Me', Icons.person, const MeView()), ]; late PageController pageController; var currentIndex = 0.obs; @override void onInit() { super.onInit(); pageController = PageController(initialPage: currentIndex.value); } @override void onClose() { pageController.dispose(); super.onClose(); } /// PageView页面变化 void onPageChanged(int index) { currentIndex.value = index; } /// BottomNavigationBar切换 void onTabTapped(int index) { pageController.jumpToPage(index); } } class PageItem { late final String label; late final IconData icons; late final StatelessWidget widget; PageItem(this.label, this.icons, this.widget); }