RadioListTile onchange 值是对象?类型
RadioListTile onchange value is object? type
我正在尝试使用 RadioListTile
来做选择题。
RadioListTile(
value: 1,
groupValue: 1,
onChanged: (val) {
print("Value");
print(val.runtimeType);
setSelectedRadio(val);
},
title: Text(snapshot.data!.data()["questions"]["question $i"]["option 1"]),
);
我得到的错误是
The argument type 'Object?' can't be assigned to the parameter type 'int'. 'Object' is from 'dart:core'. setSelectedRadio(val);
我已经检查了值的运行时类型,它正在返回 int。
将 int
作为通用参数传递给您的 RadioListTile
。
替换这个
RadioListTile(...)
有了这个
RadioListTile<int>(...)
您可以通过为 RadioListTile
指定类型或明确指定函数参数类型来解决此问题。
选项 1:
RadioListTile<int>(
// Remaining Code
)
选项 2:
RadioListTile(
onChanged: (int? val) {},
// Remaining Code
)
我正在尝试使用 RadioListTile
来做选择题。
RadioListTile(
value: 1,
groupValue: 1,
onChanged: (val) {
print("Value");
print(val.runtimeType);
setSelectedRadio(val);
},
title: Text(snapshot.data!.data()["questions"]["question $i"]["option 1"]),
);
我得到的错误是
The argument type 'Object?' can't be assigned to the parameter type 'int'. 'Object' is from 'dart:core'. setSelectedRadio(val);
我已经检查了值的运行时类型,它正在返回 int。
将 int
作为通用参数传递给您的 RadioListTile
。
替换这个
RadioListTile(...)
有了这个
RadioListTile<int>(...)
您可以通过为 RadioListTile
指定类型或明确指定函数参数类型来解决此问题。
选项 1:
RadioListTile<int>(
// Remaining Code
)
选项 2:
RadioListTile(
onChanged: (int? val) {},
// Remaining Code
)