flutter - 如何使 flutter 标签栏展开?

标签 flutter dart flutter-layout flutter-design

我正在尝试制作一个彩色选项卡 View ,如果选项卡中有更多项目,它看起来会扩展,但如果它是单个项目,它看起来不太好。 我的选项卡现在如下所示

enter image description here

怎样才能让它看起来像这样?

enter image description here

这是我的代码,我尝试过扩展小部件,但它不起作用。请帮忙

PreferredSizeWidget _buildAppBar() {
return AppBar(
  bottom: PreferredSize(
    preferredSize: const Size.fromHeight(50),
    child: _buildTabBar(),
  ),
  title: Text(AppLocalizations.of(context).translate('dash_board')),
  actions: _buildActions(context),
);}


Widget _buildTabBar() {
return Observer(builder: (context) {
  var items = _dashStore.dashData?.data?.dashboardShopsModels;
  if (items == null) {
    return Container(
      color: Colors.green,
    );
  } else {
    return Expanded(
      child: ColoredBox(
        color: Color.fromARGB(255, 9, 26, 74),
        child: TabBar(
          labelColor: Colors.white,
          indicatorWeight: 4,
          indicatorColor: Color.fromARGB(255, 255, 0, 105),  
          unselectedLabelColor: Colors.white,             
          tabs: [
            for (var item in items) Tab(text: '${item.shopName}'),
          ],
          isScrollable: true,
          labelPadding: EdgeInsets.only(left: 50, right: 50),
        ),
      ),
    );
  }
});}

最佳答案

用 SizedBox 包裹 TabBar

ColoredBox(
  color: Color.fromARGB(255, 9, 26, 74),
  child: SizedBox(
    width: MediaQuery.of(context).size.width,
    child: TabBar(..),
  ),
)

关于flutter - 如何使 flutter 标签栏展开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70141911/

相关文章:

android - flutter :ListWheelScrollView放大镜不起作用

dart - Flutter 自定义 Widget 属性转移

function - Dart&Flutter:如何在另一个类中调用一个类方法

flutter - 构建 flutter 后如何设置动画?

rest - 我的快照在futurebuilder中没有数据

flutter - Container BoxShadow 不适用于 InkWell Material

flutter |如何填充ListView的剩余空间?

design-patterns - 如何定义抽象小部件?

date - 如何在 DART(Flutter)中舍入最接近 30 分钟间隔的日期时间?

flutter - 在 flutter 中滚动 ListView 时,网络图像不断消失?