flutter bottom navigation bar
import 'package:authwithrest/bloc/auth_bloc/auth.dart';
import 'package:eva_icons_flutter/eva_icons_flutter.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:authwithrest/style/theme.dart' as Style;
import 'package:flutter_staggered_animations/flutter_staggered_animations.dart';
import 'package:authwithrest/screens/main_screen/home_screen.dart';
class MainScreen extends StatefulWidget {
@override
_MainScreenState createState() => _MainScreenState();
}
class _MainScreenState extends State<MainScreen> {
int _selectedIndex = 0;
static const TextStyle optionStyle =
TextStyle(fontSize: 30, fontWeight: FontWeight.bold);
static const List<Widget> _widgetOptions = [
HomeScreen(),
Text('Ikkinchi', style: optionStyle),
Text('Uchinchi', style: optionStyle),
Text('Oxirgi', style: optionStyle),
];
void _onItemTapped(int index) {
setState(() {
_selectedIndex = index;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
backgroundColor: Style.Colors.mainColor,
title: Text("Money Managaer"),
actions: [
IconButton(
icon: Icon(EvaIcons.logOutOutline),
onPressed: () {
BlocProvider.of<AuthenticationBloc>(context).add(
LoggedOut(),
);
})
],
),
body: AnimationLimiter(
child: _widgetOptions.elementAt(_selectedIndex),
),
floatingActionButton: FloatingActionButton(
child: const Icon(Icons.add),
backgroundColor: Colors.blue,
hoverElevation: 50,
onPressed: () {
// Add your onPressed code here!
},
),
floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,
bottomNavigationBar: BottomAppBar(
notchMargin: 5,
shape: CircularNotchedRectangle(),
color: Colors.white,
child: BottomNavigationBar(
elevation: 0,
backgroundColor: Colors.transparent,
items: [
BottomNavigationBarItem(
icon: Icon(Icons.cloud),
title: Text("Logs"),
),
BottomNavigationBarItem(
icon: Icon(Icons.book),
title: Text("Education"),
),
],
),
),
);
}
}