在我的应用程序中,我创建了小部件的ListView列表,但当我try 通过List更新它时,它没有更新
示例代码:
import 'package:flutter/material.dart';
class ListTest extends StatefulWidget {
const ListTest({Key? key}) : super(key: key);
@override
State<ListTest> createState() => _ListTestState();
}
class _ListTestState extends State<ListTest> {
List<Widget> widget_list = [
ListTile(title: Text("1"),),
ListTile(title: Text("2"),),
ListTile(title: Text("3"),),
];
@override
Widget build(BuildContext context) {
print("List Length: "+widget_list.length.toString());
return Scaffold(
appBar: AppBar(
title: Text("List Test"),
),
body: ListView(
children: widget_list,
),
floatingActionButton: FloatingActionButton(
child: Icon(Icons.delete),
onPressed: (){
widget_list.clear();
setState(() {});
},
),
);
}
}
在这里,当打开页面时,列表长度为3,当调用setState时,打印列表长度为0,但不更新ListView.