Метод viewPaddingOf
Метод viewPaddingOf виджета
MediaQuery он равен
.
Значения описывают вырез и панели даже когда
MediaQuery.of(context).viewPaddingpadding
уменьшился из-за клавиатуры.
Обнулить их помогает
removeViewPadding.
Синтаксис
MediaQuery.viewPaddingOf(context)
Параметры
| Параметр | Описание |
|---|---|
context |
BuildContext виджета под MediaQuery.
|
Пример
Давайте выведем нижний viewPadding:
import 'package:flutter/material.dart';
class ViewPadLabel extends StatelessWidget
{
const ViewPadLabel({super.key});
@override
Widget build(BuildContext context)
{
var res = MediaQuery.viewPaddingOf(context).bottom;
return Text('$res');
}
}
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: ViewPadLabel(),
),
),
),
);
}
На экране появится отступ снизу под системную панель жестов.
Пример
Давайте сравним padding и viewPadding в одной строке:
import 'package:flutter/material.dart';
class PadCompare extends StatelessWidget
{
const PadCompare({super.key});
@override
Widget build(BuildContext context)
{
var pad = MediaQuery.paddingOf(context).bottom;
var view = MediaQuery.viewPaddingOf(context).bottom;
return Text('$pad / $view');
}
}
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: PadCompare(),
),
),
),
);
}
На экране два числа через слэш: текущий padding и постоянный viewPadding снизу.
Смотрите также
-
метод
paddingOf,
который может уменьшаться при клавиатуре -
метод
removeViewPadding,
который обнуляет viewPadding для поддерева -
метод
viewInsetsOf,
который показывает перекрытие клавиатурой -
виджет
SafeArea,
который опирается на padding, а не на viewPadding