我正在使用BottomNavigationBarItem来显示BottomBar中的项目。现在我的问题是,我的title
的内容太长,无法正确显示。请看这里:
有没有一个规范的替代方案来解决这个问题?或者我必须构建我自己的自定义BottomNavigationBarItem吗?
非常感谢!
我的代码(不是很有趣)看起来像这样:
BottomBar(onTabTapped, currentIndex, context) {
this.onTap = onTabTapped;
this.currIndex = currentIndex;
items = <BottomNavigationBarItem>[
BottomNavigationBarItem(
icon: Icon(Icons.dashboard),
label: AppLocalizations.of(context).bottomBarDashboard,
),
BottomNavigationBarItem(
icon: Icon(Icons.book),
label: AppLocalizations.of(context).bottomBarMyArticles,
),
BottomNavigationBarItem(
icon: Icon(Icons.account_circle),
label: AppLocalizations.of(context).bottomBarProfile,
),
];
}
@override
Widget build(BuildContext context) {
return BottomNavigationBar(elevation: 2.0, selectedItemColor: Theme.of(context).primaryColor, items: items, onTap: onTap, currentIndex:
currIndex);
}
5条答案
按热度按时间k4emjkb11#
选项1:如果文本是静态的,你可以使用新行。像第一行\n第二行。选项2。图标可以采取任何小部件,所以你可以使用图标中的一列,并使用图标和activeIcon区分活动和非活动图标,并忽略标签。
ybzsozfc2#
将
RichText
与空label
一起使用最后一个示例:
iyr7buue3#
在这里我的答案可以帮助你..
selectedLabelStyle: TextStyle(overflow: TextOverflow.visible),
//查看此图像。x1c 0d1x
mrzz3bfm4#
我自己写了一个包,叫做
Responsive_Bottom_Bar
,它可以缩放标题的文本大小,并且使用多行标题。https://pub.dev/packages/responsive_bottom_bar
您可以像这样使用它:
yr9zkbsy5#
您可以使用title代替label,尽管它已过时。