flutter - 如何在flutter中为附件创建一个 float 按钮

标签 flutter flutter-layout

如何在 Flutter 中创建一个 float 按钮并在按钮按下时为不同的选项设置动画?我正在尝试制作如下内容:

当我尝试添加多个 float 按钮时,出现“argument for the name floating button action has already been specified”错误

    class MyBills extends StatelessWidget {
  MyBills({Key key}) : super(key: key);

  //@override
  //MyBillsPageState createState() => MyBillsPageState();
  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      body: ListView.builder(
        itemCount: 20,
        itemBuilder: (context, index) {
          return new Container(height: 100, child: BillItem());
        }
      ),
      floatingActionButton: new FloatingActionButton(
        child: new Icon(Icons.add),
        heroTag: 1,
        onPressed: _addAttachment
      ),
      floatingActionButton: new FloatingActionButton(
        child: new Icon(Icons.camera),
        heroTag: 2,
        onPressed: _cameraAttachment
      ),
    );
  }

enter image description here 或动画 float 选项 like this

最佳答案

给每个 FloatingActionButton 一个唯一的 heroTag 标签,你就可以开始了。

floatingActionButton: FloatingActionButton(
  heroTag: 0, // you can use any object here
),

您的解决方案:

@override
Widget build(BuildContext context) {
  return new Scaffold(
    body: Stack(
      alignment: Alignment.bottomRight,
      children: <Widget>[
        ListView.builder(
          itemCount: 20,
            itemBuilder: (context, index) {
              return new Container(height: 100, child: BillItem());
            }
        ),
        Column(
          mainAxisSize: MainAxisSize.min,
          children: <Widget>[
            new FloatingActionButton(child: new Icon(Icons.add), heroTag: 1, onPressed: _addAttachment),
            new FloatingActionButton(child: new Icon(Icons.camera), heroTag: 2, onPressed: _cameraAttachment),
          ],
        ),
      ],
    ),
  );
}

关于flutter - 如何在flutter中为附件创建一个 float 按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54395652/

相关文章:

flutter - 如何使用 PrimaryScrollController 从 NestedScrollView 中的 CustomScrollView 获取偏移量

Flutter Firestore 按日期和字符串查询同时不返回?

list - Flutter:删除列表中的项目反射(reflect)另一个列表

flutter - 如何在Flutter中将List <String>转换为int类型

flutter - 如何在 Flutter 中设置警报对话框位置的动画?

dart - 如何更改 ListTile 的背景颜色?

Flutter ListView 构建器滚动 Controller 监听器未在 ListView 内触发?

flutter - 容器缩小到他 child 的大小

flutter - 如何在 Flutter 中格式化日期时间?删除 DateTime 中的毫秒数?

dart - 如何在 Flutter 中自定义数字选择器?