[英]How to get a value of a textfield in a listview? (Flutter)
我有一個顯示一些文本字段的列表視圖構建器(項目的數量不是固定的,它總是可變的)。 有一個按鈕委托來獲取此文本字段的所有值。 我怎樣才能做到這一點?
首先像這樣定義一個List
List<TextEditingController> textFieldControllers=[];
然后遍歷用於在List.builder
中創建小部件的列表, List.builder
所示。
for (var i = 0; i < typesItem.length; i++) {
textFieldControllers.add(TextEditingController());
}
其中typesItem
是用於創建 Listbuilder 小部件的列表項,以便動態地保持與小部件相同的長度。您可以在轉到 List.builder 小部件后在initState
方法上運行此代碼,並像這樣初始化您的控制器。
textFieldControllers[index] = TextEditingController() ;
並像這樣在返回方法中設置 TextField 控制器
textFieldControllers[index]
因此,您可以通過使用獲得所有價值
textFieldControllers[index].text;
您可以根據需要進行操作以適應您的情況
您必須將數據存儲在包含ListView
的有狀態小部件中。
例如,您的數據可以是一個簡單的 List,每個TextField
都有一個項目。
使用TextField
的onChanged
回調在用戶編輯字段時更新數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.