【发布时间】:2021-10-30 18:26:47
【问题描述】:
如果我在 ReorderableListView Builder 中使用提取的小部件,它会显示此错误 Every item of ReorderableListView must have a key.,但是当我将它用作构建器中的方法时,它可以正常工作。
ReorderableListView.builder(
itemCount: userList.length,
itemBuilder: (context, index) {
final user = userList[index];
return WidgetList(user: user); //Not Working, throws the error
},
onReorder: (int oldIndex, int newIndex) {
setState(() {
final index = newIndex > oldIndex ? newIndex - 1 : newIndex;
final User user = userList.removeAt(index);
userList.insert(index, user);
});},
);
//if I use this, it works fine
Widget MethodList(User user) => ListTile(
key: ValueKey(user),
title: Text(user.firstName),
);
WidgetList - 如果我使用它,它就不起作用。
class WidgetList extends StatelessWidget {
final User user;
const WidgetList({Key? key, required this.user}) : super(key: key);
@override
Widget build(BuildContext context) {
return ListTile(
key: ValueKey(user),
title: Text(user.firstName),
);
}
}
编辑:WidgetList(用户)-> WidgetList(用户:用户)
【问题讨论】:
标签: flutter flutter-listview reorderable-list