如何使ValueListenableBuilder可以分配为一个图标?



我试图使用valuelistablebuilder作为子部件的参数,以前它是一个图标,我在父部件上多次调用此子部件,但我需要传递valuelistablebuilder的子部件一次。

我试图删除数据类型Icon icon;并使用final icon,但它给我警告Prefer typing uninitialized variables and fields. dart(prefer_typing_uninitialized_variables)

如何使用Icon数据类型的ValueListanableBuilder作为子部件的构造函数。

代码片段示例:

// CameraScreen ( Parent )
...
CameraButton(icon: Icon(Icons.arrow_back_ios_new));
...
// CameraScreen ( Child )
...
class CameraButton extends StatelessWidget {
Icon icon;
CameraButton({ required this.icon });
...

CameraScreen (Parent)

class CameraScreen extends StatelessWidget {
const CameraScreen({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return CameraButton(
icon: ValueListenableBuilder<Icon>(
valueListenable: ValueNotifier(Icon(Icons.arrow_back_ios_new)),
builder: (_, __, ___) {
// TODO: implement build
throw UnimplementedError();
},
),
);
}
}

CameraScreen (Child)

class CameraButton extends StatelessWidget {
const CameraButton({Key? key, required this.icon}) : super(key: key);
final Widget icon;
@override
Widget build(BuildContext context) {
// TODO: implement build
throw UnimplementedError();
}
}

最新更新