不工作,错误
宽度:MediaQuery.of(context).size.width / 2,高度:MediaQuery.of(context).size.height / 2,
不起作用,只能显示值
宽度:window.physicalSize.width / 2,高度:window.physicalSize.height / 2,
主要.dart
import 'package:flutter/material.dart';
import 'dart:ui';
void main() async {
runApp(MyApp());
}
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
//объявление переменных
//вызывается один раз при инициализации виджета
@override
void initState() {
super.initState();
}
void _f1(double value) {
setState(() {
});
}
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: 'Name App',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: Scaffold(
appBar: AppBar(
title: Text('Name Page'),
),
body: Stack(
children: <Widget>[
Align(
alignment: Alignment.center,
child: Container(
//НЕ РАБОТАЕТ, ОШИБКА
//width: MediaQuery.of(context).size.width / 2,
//height: MediaQuery.of(context).size.height / 2,
//НЕ РАБОТАЕТ, МОЖНО ТОЛЬКО ВЫВЕСТИ НА ЭКРАН ЗНАЧЕНИЯ
width: window.physicalSize.width / 2,
height: window.physicalSize.height / 2,
color: Colors.pink,
),
),
],
),
),
);
}
}
好吧,当然,如果你的小部件没有正确构建,它就不能正常工作(
window.physicalSize
它只是用来找出屏幕的物理尺寸,不应该随意使用):