拖放芯片小部件

问题描述 投票:0回答:1

我试图制作一个芯片列表,用户可以通过拖放手势重新排序,这里是示例代码,你可以执行以查看问题,正如被告知,芯片类需要一个材料祖先,所以这是什么解决方案?是否必须一直用Chip包裹Chip?

错误:

以下断言被抛出构建芯片(脏):找不到材料小部件。芯片小部件需要Material小部件祖先。

码:

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Wrap(
          direction: Axis.horizontal,
          children: List.generate(_counter, (i) {
            var chip = Chip(
              backgroundColor: Colors.blue,
              label: Text('item ${i}'),
            );

            return Draggable(
              child: chip,
              feedback: chip,
              childWhenDragging: Container(),
            );
          }),
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: Icon(Icons.add),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }

注意:我已修改默认点击计数模板以演示我的问题

flutter material-ui draggable
1个回答
1
投票

您可以将其包装在FloatingActionButton中。

var chip = FloatingActionButton(
  child: Chip(
    backgroundColor: Colors.blue,
    label: Text('item $i'),
  ),
);

希望能帮助到你!

© www.soinside.com 2019 - 2024. All rights reserved.