这是this question的后续。当我拖动列表项重新排序时,我得到了一些白色。我如何在保留列表元素之间的EdgeInsets的同时摆脱空白?这就是重新排序项目时白色间距的样子:
这就是我建造脚手架的代码
body:
Stack(
children: [
Positioned(
child: ReorderableListView.builder(
buildDefaultDragHandles: false,
itemCount: widget.cards.length,
itemBuilder: (context, index) {
return Dismissible(
key: Key(widget.cards[index].name),
onDismissed: (direction) {
setState(() {});
},
child:
Card(
margin: EdgeInsets.symmetric(vertical: 4),
child:
SizedBox(
height: 75,
child: ListTile(
tileColor: Colors.red.shade200,
title: Text(widget.cards[index].name),
trailing: ReorderableDragStartListener(
index: index,
child: const Icon(Icons.drag_handle),
),
onTap: (){
},
),
),
),
);
},
),
)
])
2条答案
按热度按时间s71maibg1#
用Theme小部件 Package ReorderableListView小部件。它将把给定的
themeData
应用到child
。使用属性
canvasColor
匹配背景的颜色。示例:
结果:
eh57zj3b2#
这是使用
proxyDecoration
完成的,返回默认子节点来修复它。proxyDecorator: (child, index, animation) => child