import 'package:flutter/material.dart';
void main() {
runApp(Calculator());
}
class Calculator extends StatelessWidget {
final numpad_background_color = Color(0x212121);
final background_color = Colors.black;
final equal_button_background_color = Color(0xffbe00);
final textColor = Colors.white;
final operatorTextColor = Color(0xf3ba0e);
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: appbar(context),
body: Stack(
children: [Container(height: MediaQuery.of(context).size.height * 0.37), numpad(context)],
)));
}
Widget appbar(BuildContext context) {
return AppBar(title: Text("Rechner", style: TextStyle(color: textColor, fontSize: 15)), backgroundColor: background_color, leading: Icon(Icons.history));
}
Widget numpad(BuildContext context) {
return Container(decoration: BoxDecoration(borderRadius: BorderRadius.circular(5), color: numpad_background_color), child:
Column(children: [
],),);
}
}
Error: No MediaQuery ancestor could be found starting from the context that was passed to MediaQuery.of(). This can happen because you have not added a WidgetsApp, CupertinoApp, or MaterialApp widget (those widgets introduce a MediaQuery), or it can happen if the context you use comes from a widget above those widgets.
I don't understand the error, I created a MaterialApp Widget and call MediaQuery from there, why does this error appear?
Wrap your classname with MaterialApp and your issue is solved. Ex. here my classname is sahim and that's how i solved this issue.
MaterialApp Class: MaterialApp is a predefined class in a flutter. It is likely the main or core component of flutter. We can access all the other components and widgets provided by Flutter SDK.
Try creating another widget like this
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Calculator(),
);
}
}
Then your main method will looks like this
void main() {
runApp(MyApp());
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With