当前位置: 首页 > 知识库问答 >
问题:

摆动-第一个和最后一个端部形状为圆形的纽扣排

白晋鹏
2023-03-14

如何在Flutter中构建一排左右两端都是圆形的按钮?我想在我的第一个flutter应用程序中添加这样的东西。imgur.com上的例子取自我华为手机上的消息应用程序。

我可以做一系列单独的浮动动作。延伸到并排坐在一排。或一排带有RoundedRectangleBorder的RaisedButtons。但这两个看起来都有点奇怪--两个圆形的纽扣

我想大概是

我应该如何把我的小部件放在一起,在我的应用程序的底部形成一个工具栏,就像这样?我想我也应该对这种完全非标准的设计持开放态度,这就是为什么我发现它对代码有点挑战。谢了。

共有1个答案

籍靖
2023-03-14
    class RoundedButton extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      floatingActionButtonLocation: FloatingActionButtonLocation.centerFloat,
      floatingActionButton: SizedBox(
        height: 60.0,
        width: 250.0,
        child: Material(
          shape: StadiumBorder(),
          textStyle: Theme.of(context).textTheme.button,
          elevation: 6.0,
          child: Row(
            crossAxisAlignment: CrossAxisAlignment.center,
            mainAxisAlignment: MainAxisAlignment.spaceBetween,
            children: <Widget>[
              Expanded(
                child: RaisedButton(
                  elevation: 0.0,
                  color: Colors.white,
                  shape: new RoundedRectangleBorder(
                      borderRadius:
                          BorderRadius.horizontal(left: Radius.circular(50))),
                  child: Padding(
                    padding: const EdgeInsets.all(0.0),
                    child: Column(
                      mainAxisAlignment: MainAxisAlignment.center,
                      children: <Widget>[
                        Icon(
                          Icons.add,
                          color: Colors.green,
                          size: 30.0,
                        ),
                        Text("New Message")
                      ],
                    ),
                  ),
                  onPressed: () {},
                ),
              ),
              Expanded(
                child: RaisedButton(
                  elevation: 0.0,
                  color: Colors.white,
                  shape: new RoundedRectangleBorder(
                      borderRadius:
                          BorderRadius.horizontal(right: Radius.circular(50))),
                  child: Padding(
                    padding: const EdgeInsets.all(2.0),
                    child: Column(
                      mainAxisAlignment: MainAxisAlignment.center,
                      children: <Widget>[
                        Icon(
                          Icons.more_vert,
                          color: Colors.green,
                          size: 30.0,
                        ),
                        Text("More")
                      ],
                    ),
                  ),
                  onPressed: () {},
                ),
              ),
            ],
          ),
        ),
      ),
      body: Container(),
    );
  }
}
 类似资料:
  • 我已经画了一个正方形,但是我怎样才能在它旁边放置另一个正方形而没有任何空隙呢?我认为< code>mRedRect1F中的第一个参数(0)需要更改,但我不知道该更改什么。 使现代化

  • 我有一个网格窗格的圆圈,我希望能够将一个圆圈拖到另一个圆圈之上,并将第一个圆圈的颜色应用于第二个圆圈。 我遇到的问题是,我无法让目标圆检测到dragEntered或dragOver。我已经能够使用标签成功地实现这一点,但由于某些原因,圆圈不会产生相同的效果。 我见过一些准解决方案,涉及设置circle.setMouseTransparent(true),以便被拖动节点下的节点可以看到拖动,但这里也

  • 问题内容: 我发布此消息是因为该主题刚刚在另一个问题/答案中提出,并且该行为没有得到很好的记录。 考虑数据框 我想获取由column定义的每个组的第一行和最后一行。 我试过了 但是,这并没有给我我所期望的。 如何获得每个组中的实际第一个和最后一个值? 问题答案: 一种选择是使用该方法: 但是,我还没有找到一种将它们整齐地聚合的方法。当然,总是可以使用构造函数: 注意:我明确使用了该属性,否则您必须

  • 最近我在做一个像涂鸦跳跃这样的游戏,但是我有一个问题: 我为球员将要坠落的平台制作了一个动态阵列 然后我在阵列中随机添加11个平台,然后在冰柱之后添加另一个平台,在那里将创建玩家! 最后这将在屏幕中渲染。在我做了一个在渲染方法中接收玩家位置和平台位置的方法之后: 玩家仅停止阵列上的最后一个矩形!为什么会这样?我想让球员们堵住所有的矩形

  • 是否可以像所附图像一样在表格中放置一个按钮?

  • 我想创建一个多边形从形状点。