The argument type 'MaterialApp Function()' can't be assigned to the parameter type 'Widget Function(BuildContext)'
1,730
Solution 1
ScreenUtilInit: builder
provides BuildContext
on callback,
On line 162 do builder: (_) => MaterialApp
or
return ScreenUtilInit(
designSize: Size(1080, 2160),
builder: (BuildContext c) => MaterialApp(
Solution 2
If you use ScreenUtilInit, you must have to provide Buildcontext or pass a value in the builder function callback.
Use:
return ScreenUtilInit(
designSize: Size(1080, 2160),
builder: (BuildContext context,child) => MaterialApp(
or:
return ScreenUtilInit(
designSize: Size(1080, 2160),
builder: (_,child) => MaterialApp(
Author by
Muhammad Zakari
Updated on January 04, 2023Comments
-
Muhammad Zakari over 1 year
I am using
flutter_screenutil
and The following code used to work, but it gives me this error when I try to run it:Error: The argument type 'MaterialApp Function()' can't be assigned to the parameter type 'Widget Function(BuildContext)'.
class _MyAppState extends State<MyApp> { @override void initState() { super.initState(); } @override Widget build(BuildContext context) { SystemChrome.setPreferredOrientations([ DeviceOrientation.portraitUp, DeviceOrientation.portraitDown, ]); return MultiProvider( providers: [ ChangeNotifierProvider( create: (_) { return themeChanger; }, ), ChangeNotifierProvider( create: (_) { return settingChanger; }, ), ChangeNotifierProvider(create: (_) { return locationChanger; }) ], child: Consumer2<DarkThemeProvider, AdvancedSettingsProvider>( builder: (context, value1, value2, child) { return ScreenUtilInit( designSize: Size(1080, 2160), builder: () => MaterialApp( builder: (context, widget) { ScreenUtil.setContext(context); return MediaQuery( data: MediaQuery.of(context).copyWith(textScaleFactor: 1), child: widget!); }, theme: Styles.themeData( themeChanger.darkTheme, context, themeChanger.color), debugShowCheckedModeBanner: false, home: (widget.payload.isEmpty) ? Skeleton() [enter image description here][1] : AccessedByNotifPage( payload: widget.payload, ), ), ); }), ); } }
This image shows the error:
-
Miriam almost 2 yearsThis did not solve the problem for me
-
Yeasin Sheikh almost 2 yearsIt depends on version number.