代码之家  ›  专栏  ›  技术社区  ›  creativecreatorormaybenot

BottomAppBar中缺少停靠的FloatingActionButton的槽口

  •  1
  • creativecreatorormaybenot  · 技术社区  · 6 年前

    一次

    你可以 码头 FloatingActionButton 通过指定 floatingActionButtonLocation 在一个 Scaffold 使用 BottomAppBar 是的。

    这个 documentation 谈论a:

    “缺口”

    docked fab

    现在

    screen capture

    import 'package:flutter/material.dart';
    
    main() => runApp(MaterialApp(
      home: Scaffold(
        bottomNavigationBar: BottomAppBar(
          child: Container(
            height: 300.0,
            color: Colors.pinkAccent,
          ),
        ),
        floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,
        floatingActionButton: FloatingActionButton(onPressed: () {}),
      ),
    ));
    

    颤振 版本 0.5.6 ,我无法重新创建凹口。第二个图像和下面的代码属于一起。

    这是吗 问题/错误 或者我现在能做些什么吗?

    3 回复  |  直到 6 年前
        1
  •  4
  •   creativecreatorormaybenot    6 年前

    这个 BottomAppBar 现在需要它 shape 指定为 CircularNotchedRectangle ,它不像以前那样设置为默认值 hasNotch 是:

    Scaffold(
      floatingActionButtonLocation: FloatingActionButtonLocation.endDocked,
      floatingActionButton: FloatingActionButton(...),
      bottomNavigationBar: BottomAppBar(
        shape: CircularNotchedRectangle(),
        ...
      ),
    );
    
        2
  •  2
  •   emerssso    6 年前

    槽口是可选/可配置的。在 beta Branch,你通过设置 hasNotch 构造函数中的属性。

    不过,看起来这已经改变了 dev 分支(在您指定的0.5.6版本中)。在这里,您指定 shape 而不是缺口。这个 Flutter Gallery 有一个很好的演示如何制作这些。他们还提供看起来像 default implementation for circles .

    你可以这样做:

    import 'package:flutter/material.dart';
    
    main() => runApp(MaterialApp(
      home: Scaffold(
        bottomNavigationBar: BottomAppBar(
          shape: CircularNotchedRectangle(),
          child: Container(
            height: 300.0,
            color: Colors.pinkAccent,
          ),
        ),
        floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,
        floatingActionButton: FloatingActionButton(onPressed: () {}),
      ),
    ));