我已尝试使用此代码来替换Flutter中的Review视图。但是如何用flift中的listview小部件进行动画处理
这有效吗?
ListView(
children: <Widget>[
ListTile(
leading: Icon(Icons.map),
title: Text('Map'),
),
ListTile(
leading: Icon(Icons.photo_album),
title: Text('Album'),
),
ListTile(
leading: Icon(Icons.phone),
title: Text('Phone'),
),
],
);
您还可以使用animatedlist小部件来制作动画。以下链接中提供了代码示例。
ListView
:
通常,此方法应与少量子项一起使用,因为List还将构造列表中的不可见元素,而大量元素可能会使这种效率低下。
ListView.builder()
:
列表项是惰性构造的,这意味着仅构造了特定数量的列表项,并且当用户向前滚动时,较早的列表项将被破坏。
更多信息为here。
推荐的,有效的,有效的列表构建方式使用ListView.Builder。当您拥有动态列表或具有大量数据的列表。这本质上是相当于Android上的RecyclerView,可自动回收列出适合您的元素:
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Sample App"),
),
body: ListView.builder(
itemCount: widgets.length,
itemBuilder: (BuildContext context, int position) {
return getRow(position);
}));
}
Widget getRow(int i) {
return GestureDetector(
child: Padding(
padding: EdgeInsets.all(10.0),
child: Text("Row $i")),
onTap: () {
setState(() {
widgets.add(getRow(widgets.length + 1));
print('row $i');
});
},
);
}