Flutter Flatter BottomNavigationBarItem只接受图标而不接受其他小部件?

Flutter Flatter BottomNavigationBarItem只接受图标而不接受其他小部件?,flutter,flutter-cupertino,Flutter,Flutter Cupertino,在我们的Flatter Cupertino项目中,我们需要在底部的一个图标上显示一个徽章。准确地说,购物车中已经有多少物品 我尝试了这里提供的不同小部件和解决方案,但是BottomNavigationBarItem只接受icon:icon(…)而不接受其他内容。例如,如果我放置图标:堆栈(..)而不是图标:图标(..),则会显示错误消息 “无效常量值…” 以下是一些示例代码: class CupertinostoreWidget{ @凌驾 小部件构建(构建上下文){ 回程杯( tabBar:Cu

在我们的Flatter Cupertino项目中,我们需要在底部的一个图标上显示一个徽章。准确地说,购物车中已经有多少物品

我尝试了这里提供的不同小部件和解决方案,但是
BottomNavigationBarItem
只接受
icon:icon(…)
而不接受其他内容。例如,如果我放置
图标:堆栈(..)
而不是
图标:图标(..)
,则会显示错误消息 “无效常量值…”

以下是一些示例代码:

class CupertinostoreWidget{
@凌驾
小部件构建(构建上下文){
回程杯(
tabBar:CupertinoTabBar(
项目:常数[
底部导航气压计(
图标:图标(CupertinoIcons.home),
标题:文本(“Kühlschrank”),
),
底部导航气压计(
图标:图标(CupertinoIcons.profile_圆圈),
标题:文本(“Konto”),
),
底部导航气压计(
图标:图标(CupertinoIcons.购物车),
标题:文本(“Warenkorb”),
),
],
),
因此,如果我不能放置任何东西来代替
图标(..)
。没有其他小部件,没有
堆栈(..)

为什么?如何放置其他小部件,例如
Badge(…)


这个问题与可能的重复问题不同,因为我已经尝试了发布在那里的解决方案,但仍然不能使用堆栈(..),而只能使用图标(..).

我尝试重现该问题,但在更改了一些内容后它确实起作用。首先,
icon
属性接受一个
小部件,因此不仅仅是一个
图标,所以这不是问题所在

但是,我注意到,在
items:const[
中,您应该删除
const
关键字,因为它不是必需的,也不是常量

最后,您需要将选项卡生成器添加到
CupertinoTabScaffold
,这基本上返回底部导航栏上方显示的内容

最后的代码如下所示:

返回cupertinobsaffold(
tabBuilder:(BuildContext,int i){
返回CupertinoActivityIndicator();
},
tabBar:CupertinoTabBar(
项目:[
底部导航气压计(
图标:徽章(
内容:文本('3'),
子:图标(图标.设置),
),
标题:文本(“Kühlschrank”),
),
底部导航气压计(
图标:图标(CupertinoIcons.profile_圆圈),
标题:文本(“Konto”),
),
底部导航气压计(
图标:图标(CupertinoIcons.购物车),
标题:文本(“Warenkorb”),
),
],
),
);

icon属性使用堆栈的可能重复操作对我有效。尝试时,确切的错误消息是什么?
badges: ^1.0.2
import 'package:badges/badges.dart';