如何创建自定义的BottomTabBar

时间:2019-05-22 06:15:03

标签: dart flutter floating-action-button bottomnavigationview

我想像附件图像一样实现BottomAppNavigation。 但是,将BottomAppBar与FloatingAction结合使用不会导致此布局。

您能帮我使它看起来像是中心商品吗?

Screenshot

2 个答案:

答案 0 :(得分:0)

我认为Fancy Bottom Navigation非常简单,它只是您添加到应用中并获得所需结果的插件,

FancyBottomNavigation

将以下内容添加到您的.yaml文件中

dependencies:
  ...
  fancy_bottom_navigation: ^0.1.0

和基本用法

bottomNavigationBar: FancyBottomNavigation(
    tabs: [
        TabData(iconData: Icons.home, title: "Home"),
        TabData(iconData: Icons.search, title: "Search"),
        TabData(iconData: Icons.shopping_cart, title: "Basket")
    ],
    context: context,
    onTabChangedListener: (position) {
        setState(() {
        currentPage = position;
        });
    },
)

请随时查看Fancy Bottom Navigation

答案 1 :(得分:0)

enter image description here添加依赖项

dependencies:
  ff_navigation_bar: ^0.1.4

基本用途

import 'package:flutter/material.dart';
import 'package:ff_navigation_bar/ff_navigation_bar.dart';
...
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              'Demonstration',
            ),
          ],
        ),
      ),
      bottomNavigationBar: FFNavigationBar(
        theme: FFNavigationBarTheme(
          barBackgroundColor: Colors.white,
          selectedItemBorderColor: Colors.yellow,
          selectedItemBackgroundColor: Colors.green,
          selectedItemIconColor: Colors.white,
          selectedItemLabelColor: Colors.black,
        ),
        selectedIndex: selectedIndex,
        onSelectTab: (index) {
          setState(() {
            selectedIndex = index;
          });
        },
        items: [
          FFNavigationBarItem(
            iconData: Icons.calendar_today,
            label: 'Schedule',
          ),
          FFNavigationBarItem(
            iconData: Icons.people,
            label: 'Contacts',
          ),
          FFNavigationBarItem(
            iconData: Icons.attach_money,
            label: 'Bills',
          ),
          FFNavigationBarItem(
            iconData: Icons.note,
            label: 'Notes',
          ),
          FFNavigationBarItem(
            iconData: Icons.settings,
            label: 'Settings',
          ),
        ],
      ),
    );

源代码 https://github.com/55Builds/Flutter-FFNavigationBar

这种依赖性比FancyBottomNavigation具有许多特征