BottomNavigationBarItem颤动中的背景颜色

问题描述 投票:2回答:1

我需要将背景色设置为所选的BottomNavigationBarItem,如此图像BottomNavigationBarItem background color

flutter flutter-layout flutter-dependencies flutter-test
1个回答
0
投票

这里是更改点击背景的示例:

class _MyWidgetState extends State<MyWidget> {
  IconData selectedItem = Icons.dashboard;

  List<IconData> get itemsList => _items.keys;

  Map<IconData, String> _items = {
    Icons.home: 'Home',
    Icons.drive_eta: 'Delivery',
    Icons.shopping_basket: 'Products',
    Icons.mail: 'Messages'
  };

  @override
  Widget build(BuildContext context) {
    return BottomNavigationBar(
        onTap: (int index) {
          // todo something
          setState(() {
            selectedItem = itemsList[index];
          });
        },
        currentIndex: itemsList.indexOf(selectedItem),
        items: _items.entries.map((MapEntry<IconData, String> entry) {
          return BottomNavigationBarItem(
            icon: Icon(entry.key, color: Colors.white),
            backgroundColor: entry.key == selectedItem ? Colors.black : Colors.blueGrey,
            title: Text(entry.value),
          );
        }).toList());
  }
}
© www.soinside.com 2019 - 2024. All rights reserved.