颤振:文本编辑控制器数组



在颤振中设置TextEditingController数组的最佳方法是什么?我的意思是我需要获取一个Textfield(1 到 n(值的值数组并发送到服务器。

谁能帮助如何实现这一目标?

我试过了

for(int i=1;i<75;i++) { 
TextEditingController _controller[i] = TextEditingController(); 
}

问候 萨蒂什

有很多方法可以做到这一点

List<TextEditingController> _controller = List.generate(74, (i) => TextEditingController());

List<TextEditingController> _controller = [];
for (int i = 1; i < 75; i++) _controller.add(TextEditingController());

List<TextEditingController> _controller = [
for (int i = 1; i < 75; i++)
TextEditingController()
];

您必须添加一个TextEditing Controller列表,并且需要将 contoller 文本添加到该列表中并根据需要对其进行解析。

List<String> selection = [];  
List<Product> productList = []; 
//---------Adding contoller to list   

productProvider.getAll(user.guid).forEach((element) {//---List<Product>
final TextEditingController quantityController = 
TextEditingController(text: element.quantity);
quantityControllers.add(quantityController);
});
//-------Adding list of products to list
List<Map<String, dynamic>> productItems = [];
List<Product> productOriginalList = 
productProvider.getAll(user.guid);
for (int i = 0; i < productOriginalList.length; i++) {
final Product product = productOriginalList[i];
if (selection.contains(product.equipmentId)) {

productItems.add(product.toJson(quantityControllers[i].text));
}
/* Map<String, dynamic> toJson(String quan) => {
'ProductId': id,
'Quantity': quan,
};     
TextField(
controller: quantityControllers[index],*/

如果您使用的是动态小部件,则可以使用 -

TextEditingController _controller = new  TextEditingController(); 

在您的动态小部件中。这将在每次运行小部件时自动创建新的文本编辑控制器。最后,您可以将该值存储在列表中。

例:-

List <String>controllers = [];
controllers.add(_controller.text.toString)

最新更新