ImageIcon(
AssetImage("images/icon_more.png"),
color: Color(0xFF3A5A98),
),
而不是
new BottomNavigationBarItem(
icon: Icon(Icons.home),
title: Text('Home'),
),
改成这样
BottomNavigationBarItem(
icon: ImageIcon(
AssetImage("images/icon_more.png"),
color: Color(0xFF3A5A98),
),
title: Text('Home'),
),
显然,如果您想将图像显示为底部栏导航图标并保留原始颜色,则解决方案是在BottomNavigationBarItem中使用Image.asset('image_path')作为icon/activeIcon。
但是,如果您的items: const <BottomNavigationBarItem>[]
中有关键字const
,它会出现错误。如果您删除它,您应该能够使用Image.asset
而不是ImageIcon
(它会着色)。
正如@asbah-riyas所提到的,可以通过将ImageIcon
小部件提供给BottomNavigationBarItem
的icon
参数来完成。虽然您不需要在其中指定color
您可以在这里的codepen中检查或尝试它。
你可以使用这个替代:
BottomNavigationBarItem(
icon: Image.asset(" your image here "),
),
label: 'home',
),
正确的答案是 BottomNavigationBarItem(icon: Image.asset('images/symbol.png')),
只要你将png图像放在images文件夹中,并在pubspeq.yaml的assets部分中提到images/image.png,就可以了。
NavigationBarItem的图像属性需要一个Widget,而不是Icon,所以我可以使用这个。
BottomNavigationBarItem(icon: Image.asset('images/symbol.png')),