【发布时间】:2021-08-03 01:28:06
【问题描述】:
我开始学习 Flutter,我正在尝试编写一个应用程序。
应用程序在 SwitchListTile 的 ListView 中有一个玩家列表。目前这是有效的。我正在尝试添加一个函数来从列表中删除其中一个玩家。
class PlayersSwitchListTilesContainer extends StatelessWidget {
PlayersSwitchListTilesContainer({this.players});
final List<PlayerModel> players;
@override
Widget build(BuildContext context) {
return Scaffold(
body: ListView(
children : players.map<Widget>((PlayerModel p){
return PlayerSwtichListTile(singlePlayer: p);
}).toList()
),
);
}
}
class PlayerSwtichListTile extends StatefulWidget {
PlayerSwtichListTile({this.singlePlayer});
final PlayerModel singlePlayer;
void removePlayer()
{
// What goes here ???
print('Delete ' + singlePlayer.playerName);
}
@override
_PlayerSwtichListTileState createState() => new _PlayerSwtichListTileState(player: singlePlayer);
}
目前,当我尝试删除播放器时,它会调用正确的代码并打印播放器的名称。但是,我很难了解如何从players 列表中删除播放器。
如果有人有任何指点,我将不胜感激
【问题讨论】:
-
你应该使用
ListView.builder。 -
setState 也可以正常工作
-
这能回答你的问题吗? flutter delete item from listview
标签: flutter