BottomNavigationBar constructor
Creates a bottom navigation bar, typically used in a Scaffold where it is provided as the Scaffold.bottomNavigationBar argument.
The length of items must be at least two and each item's icon and title must be not null.
If type is null then BottomNavigationBarType.fixed is used when there
are two or three items, BottomNavigationBarType.shifting otherwise.
If fixedColor is null then the theme's primary color,
ThemeData.primaryColor, is used. However if BottomNavigationBar.type is
BottomNavigationBarType.shifting then fixedColor is ignored.
Implementation
BottomNavigationBar({
Key key,
@required this.items,
this.onTap,
this.currentIndex = 0,
BottomNavigationBarType type,
this.fixedColor,
this.iconSize = 24.0,
}) : assert(items != null),
assert(items.length >= 2),
assert(
items.every((BottomNavigationBarItem item) => item.title != null) == true,
'Every item must have a non-null title',
),
assert(0 <= currentIndex && currentIndex < items.length),
assert(iconSize != null),
type = type ?? (items.length <= 3 ? BottomNavigationBarType.fixed : BottomNavigationBarType.shifting),
super(key: key);