import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:sefer_driver/constant/colors.dart'; class BottomBarController extends GetxController { var currentIndex = 0.obs; void changePage(int index) { currentIndex.value = index; } } class HomeScreen extends StatelessWidget { final BottomBarController controller = Get.put(BottomBarController()); HomeScreen({super.key}); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('Bottom Bar Example'.tr), ), body: Obx(() => IndexedStack( index: controller.currentIndex.value, children: const [ HomeView(), ProfileView(), StatisticsView(), WalletView(), ], )), bottomNavigationBar: Obx(() => BottomNavigationBar( backgroundColor: Colors.greenAccent, currentIndex: controller.currentIndex.value, onTap: controller.changePage, items: [ BottomNavigationBarItem( icon: const Icon( Icons.home, color: AppColor.primaryColor, ), label: 'Home'.tr, ), BottomNavigationBarItem( icon: const Icon( Icons.person, color: AppColor.primaryColor, ), label: 'Profile'.tr, ), BottomNavigationBarItem( icon: const Icon( Icons.bar_chart, color: AppColor.primaryColor, ), label: 'Statistics'.tr, ), BottomNavigationBarItem( icon: const Icon( Icons.account_balance_wallet, color: AppColor.primaryColor, ), label: 'Wallet'.tr, ), ], )), ); } } class HomeView extends StatelessWidget { const HomeView({super.key}); @override Widget build(BuildContext context) { Map data; return const Center( child: Column( children: [ Text('Home View'), ], ), ); } } class ProfileView extends StatelessWidget { const ProfileView({super.key}); @override Widget build(BuildContext context) { return const Center( child: Text('Profile View'), ); } } class StatisticsView extends StatelessWidget { const StatisticsView({super.key}); @override Widget build(BuildContext context) { return const Center( child: Text('Statistics View'), ); } } class WalletView extends StatelessWidget { const WalletView({super.key}); @override Widget build(BuildContext context) { return const Center( child: Text('Wallet View'), ); } }