我正在制作SD卡中的本地歌曲列表,并且我成功地获得了它们,但是每当我尝试将它们放入ListView.Builder
时,屏幕上没有显示任何内容
这是我的ListView.Builder
代码
@override Widget build(BuildContext context) {
return SingleChildScrollView(
physics: ScrollPhysics(),
child: ListView.builder(
physics: NeverScrollableScrollPhysics(),
shrinkWrap: true,
itemCount: songsData.songsCount,
itemBuilder: (BuildContext context, int index) {
return CustomCard(
songName: songsData.songsList[index].title ??
Center(child: CircularProgressIndicator()),
artistName: songsData.songsList[index].artist ??
Center(child: CircularProgressIndicator()),
);
},
)
);
[![Screenshot of the output][1]][1]}
函数我调用来获取数据已经有数据在它,但ListView.Builder
不显示它们这是我从本地存储获取歌曲列表的函数代码
void getSongsData() async {
songsList = await audioQuery.getSongs();
print(songsList.length);
}
打印语句显示列表中有数据>>
I/flutter (24671): 332
尝试调用setState或使用FutureBuilder。
这个列表是在另一个类中使用的,这个类获取数据(SongsData)并且要读取它的长度或内容它必须是一个静态列表,以便其他类可以访问