我正在开发一个排行榜系统,它对地图进行排序,并在 listView 内的 listTile 上显示键,但是当我重新加载应用程序时,它不会显示任何 listTiles 任何帮助表示赞赏 这是这个小部件的代码
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
Map players = {"Hello": 1468, "Ableflyer": 1820, "crazyman": 1536, "gottoosilly": 2160};
Map sortplayer = Map.fromEntries(players.entries.toList()..sort((e1, e2) => e1.value.compareTo(e2.value)));
class daily extends StatelessWidget {
const daily({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Column(
children: [
ListView.builder(
itemCount: sortplayer.length,
itemBuilder: (BuildContext context, int index){
return ListTile(
title: Text(
sortplayer.keys.elementAt(index).toString()
),
);
},
)
],
);
}
}
用
ListView
小部件包裹您的 Expanded
。
class daily extends StatelessWidget {
const daily({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Column(
children: [
Expanded(
child: ListView.builder(
itemCount: sortplayer.length,
itemBuilder: (BuildContext context, int index) {
return ListTile(
title: Text(sortplayer.keys.elementAt(index).toString()),
);
},
),
)
],
);
}
}
我强烈建议您查看此视频
你可以尝试用这段代码替换ListView.builder吗
ListView.builder(
itemCount: sortplayer.length,
itemBuilder: (BuildContext context, int index){
var player = sortplayer.entries.toList()[index];
return ListTile(
title: Text(player.key),
);
},
)
请告诉我这对您是否有帮助