Как задать размеры элементов на основе процента от ширины или высоты экрана в Flutter?

В Flutter можно задавать размеры элементов на основе процента от ширины или высоты экрана с помощью класса MediaQuery
. MediaQuery.of(context).size
предоставляет вам размер экрана, который можно использовать для вычисления размера ваших виджетов.
Вот как это сделать:
- Ширина как процент от ширины экрана:
Container( width: MediaQuery.of(context).size.width * 0.5, // 50% ширины экрана height: 100.0, color: Colors.blue, child: Center(child: Text('50% ширины')), );
- Высота как процент от высоты экрана:
Container( width: 100.0, height: MediaQuery.of(context).size.height * 0.3, // 30% высоты экрана color: Colors.green, child: Center(child: Text('30% высоты')), );
- И ширина, и высота как процент:
Container( width: MediaQuery.of(context).size.width * 0.8, // 80% ширины экрана height: MediaQuery.of(context).size.height * 0.4, // 40% высоты экрана color: Colors.orange, child: Center(child: Text('80% ширины и 40% высоты')), );
Умножая ширину или высоту экрана на процент (от 0 до 1), вы можете задавать размеры элементов соответственно. Эти значения можно динамически изменять в зависимости от требований макета вашего приложения.