[Flutter]BottonNavigationBarItemの選択されてない時のアイコンの色を変えるには?

Flutter

どうも、ちょげ(@chogetarou)です。

BottomNavigationBarItemの選択されていない時のアイコンの色を変える方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

BottomNavigationBarItemの選択されていない時のアイコンの色を設定するには、BottomNavigationBarの引数「unselectedIconTheme」を使います。

まず、BottomNavigationBarの引数「unselectedIconTheme」に、IconThemeDataを指定します。

そして、IconThemeDataの引数「color」に非選択時のアイコンの色を指定します。

BottomNavigationBar(
  unselectedIconTheme: IconThemeData(
    color: /*選択されてない時のアイコンの色*/,
  ),
  items: [
    ・・・
  ],
  currentIndex: _currentIndex,
  onTap: _onTap,
),

これでBottomNavigationBarItemの選択されてない時のアイコンの色を変えることが出来ます。

もし、unselectedItemColorで非選択中の色を設定する場合は、unselectedIconThemeで設定された色が優先されます。

使用例

以下は、使用例です。

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: _pages[_currentIndex],
      bottomNavigationBar: BottomNavigationBar(
        unselectedIconTheme: IconThemeData(
          color: Colors.green,
        ),
        items: [
          BottomNavigationBarItem(
            icon: Icon(Icons.settings),
            label: 'Settings',
          ),
          BottomNavigationBarItem(
            icon: Icon(Icons.home),
            label: 'Home',
          ),
          BottomNavigationBarItem(
            icon: Icon(Icons.favorite),
            label: 'Favorite',
          ),
        ],
        currentIndex: _currentIndex,
        onTap: _onTap,
      ),
    );
  }

まとめ

BottomNavigationBarItemの選択時のアイコンの色を変えるには、BottomNavigationBarの引数「selectedIconTheme」を使います。

コメント

タイトルとURLをコピーしました