我正在处理ListView中的视频,并且由于不必要地丢弃了对象,因此它多次下载相同的视频。因此,性能受到严重打击。下面是列表视图的代码。我也尝试过Listview.builder和Listview,但是都表现出相同的行为。
ListView.custom(
childrenDelegate: SliverChildBuilderDelegate(
(BuildContext context, int index) {
return VideoPlayer(
id: snapshot.data[index]['url'],
);
},
childCount: snapshot.data.length,
findChildIndexCallback: (Key key) {
final ValueKey valueKey = key;
final String data = valueKey.value;
return snapshot.data
.indexWhere((element) => element['url'] == data);
}),
controller: controller,
);