flutter - 如何在列表中添加 TextField 对象?

标签 flutter dart

我尝试在列表中添加 TextField 对象,但出现错误“参数类型“PlayerItem”无法分配给参数类型“TextField”。

我创建了一个 TextField 列表 (_playerList):

List<TextField> _playerList = new List();

我创建了一个类来创建 TextField 对象:

class PlayerItem extends StatelessWidget {

  //constructor
  PlayerItem();

  @override
  Widget build(BuildContext context) {
    return TextField(
      decoration: InputDecoration(
        prefixIcon: const Icon(Icons.person),
        hintText: "Player",
        counterText: "",
      ),
    );
  }
}

当我尝试在列表中添加项目时出现错误:

 _playerList.add(new PlayerItem()),

最佳答案

这是一个预期的类型错误。

您将列表声明为 List<TextField>并尝试插入PlayerItem .
这样做的结果是您应该使用 PlayerItem 输入您的列表。 :

List<PlayerItem> _playerList = <PlayerItem>[];

或者,您也可以使用更通用的类型,即 TextField 的父类(super class)型。和PlayerItem这可能是 Widget例如:

List<Widget> _playerList = <Widget>[];

关于flutter - 如何在列表中添加 TextField 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56381153/

相关文章:

c - 将 Dart 嵌入应用程序

sorting - 如何在Dart中创建排序方法?

flutter - 通过使用flutter_login_facebook 0.2.1与Flubase进行Flutter Facebook登录

dart - 在Dart中创建一组独特的 map

flutter - 如何在 Flutter 中创建流程图?

caching - 如何在 Flutter 中更改图像缓存的缓存持续时间(包 : flutter_cached_network_image & flutter_cache_manager)

authentication - 从侧面而不是屏幕底部输入省道编号字段(用于横向)

flutter : Custom Radio Button

flutter - flutter : flutter 1.22更新后,我在Lineargradient属性中遇到错误

flutter - 使用多个图像创建链式 flutter 动画