flutter - How to save values selected from a flutter multiselect widget in to a list
问题描述
I have used this flutter package "multiselect" in my flutter project to select multiple data from a dropdown.
List _fines;
MultiSelect(
autovalidate: false,
titleText: "Fine list",
validator: (value) {
if (value == null) {
return 'Please select one or more option(s)';
}
},
errorText: 'Please select one or more option(s)',
dataSource: [
{"display": "Fine No 1", "index": 1, "value": 5000},
{"display": "Fine no 2", "index": 2, "value": 2500},
{"display": "Fine no 3", "index": 3, "value": 1000},
{"display": "Fine no 4", "index": 4, "value": 500}
],
textField: 'display',
valueField: 'index',
filterable: true,
required: true,
value: null,
onSaved: (value) {
setState(() {
_fines = value;
});
})
I cannot save data into the list. After the on saved it says _fines list is null. Thanks for your time.
解决方案
You can get your last selected values with change
callback function as a parameter of MultiSelect
widget
List<int> selectedValues = [];
MultiSelect(
autovalidate: false,
titleText: "title",
validator: (value) {
if (value == null) {
return 'Please select one or more option(s)';
}
},
errorText: 'Please select one or more option(s)',
dataSource: [
{
"display": "Australia",
"value": 1,
},
{
"display": "Canada",
"value": 2,
},
{
"display": "India",
"value": 3,
},
{
"display": "United States",
"value": 4,
}
],
textField: 'display',
valueField: 'value',
filterable: true,
required: true,
value: null,
change: (values){
selectedValues = values;
print(selectedValues);
},
),
推荐阅读
- mysql - 根据我的查询,它不应该返回值。但它显示了一些值
- python - NLP - Python - 条件频率分布失败
- ios - 带有 NotificationCenter 和 TabBarController 的 UICollectionView 可区分数据源
- javascript - 将 Firebase 数据库中的数据显示到 html 文档中
- javascript - d3.js - selectAll 返回不存在元素的目的是什么
- javascript - Vue.js - 如何将道具传给孙辈
- javascript - 如何提高 React Native 地理定位运行屏幕的性能
- javascript - 将功能部署到 Firestore 时出错:
- flutter - =(等于)和:(冒号)默认参数初始化器之间的颤振差异
- python - 与 python mysql.connector 的时间戳比较