如何在 flutter 中实现圆角的 bottomAppbar?

How to implement rounded bottomAppbar in flutter?

我想创建一个像这样的圆形底部应用栏。
圆底应用栏:

但它看起来像这样... Coded BottomAppBar:

我该如何去掉那白色的部分?

    return ClipRRect(
      borderRadius: BorderRadius.only(
        topLeft: Radius.circular(25),
        topRight: Radius.circular(25),
        bottomRight: Radius.circular(25),
        bottomLeft: Radius.circular(25),
      ),
      child: Padding(
        padding: const EdgeInsets.only(bottom:20.0),
        child: BottomAppBar(
    
   shape: CircularNotchedRectangle(),
   child: new Row(
        
        mainAxisAlignment: MainAxisAlignment.spaceBetween,
        
        children: <Widget>[
          IconButton(
            icon: Icon(Icons.menu),
            color: Colors.white,
            onPressed: () {},
          ),
          IconButton(
            icon: Icon(Icons.search),
            color: Colors.white,
            onPressed: () {},
          ),
        ],
    ),
    color: Colors.blueGrey,
    ),
      )
    ); ```

应用栏小部件的形状为 属性,您应该使用它来获得所需的结果,将您的代码更改为此

BottomAppBar(
    shape: RoundedRectangleBorder(
      borderRadius: BorderRadius.all(
        topLeft: Radius.circular(25),
        topRight: Radius.circular(25),
        bottomRight: Radius.circular(25),
        bottomLeft: Radius.circular(25),
      ),
    ),
   ... //Your codes
  ),

正如@Jagadish 建议的那样,我使用 Shape: RoundedRectangleBorder 来获取圆形的 BottomAppBar。 然而,为了获得缺口栏,我使用了:

    shape: AutomaticNotchedShape(
RoundedRectangleBorder(
      borderRadius: BorderRadius.all(Radius.circular(25),
 ),
StadiumBorder(),
    ),
   ... //Codes=
  ),

这也为扩展浮动操作按钮和(我认为)具有不同形状的按钮提供了一个缺口。