Как я могу измерить конкретную высоту флаттера?
Понятия не имею, чтобы разобраться в этой проблеме в трепете. Я хочу знать размер без размера панели приложения и размера панели вкладок (вверх).
Я использую переменную vertical_size как
var vertical_size = (MediaQuery.of(context).size.height -
AppBar().preferredSize.height -
MediaQuery.of(context).padding.top);
но я не понял размер панели вкладок. Это значит, что в Iphone есть негабаритные. (Android сейчас в порядке ...)
У вас есть идея измерить высоту панели вкладок с помощью Mediaquery? Или есть идея измерить фактическую площадь использования?
2 ответа
Вы всегда можете определить свободное пространство в любом месте вашего макета с помощью
LayoutBuilder
В случае полной полезной высоты экрана вы можете использовать
MediaQuery
Привет и добро пожаловать в StackOverflow.
В iOS он не слишком большой. Что происходит, так это то, что он будет учитывать безопасную зону, следовательно, его высота будет больше / меньше в зависимости от устройства, на котором он работает.
Если вы хотите получить высоту экрана без высоты, просто сделайте это следующим образом:
Widget build() {
AppBar appBar = AppBar();
double vertical_size = MediaQuery.of(context).size.height - appBar.preferredSize.height;
return Scaffold(
appBar: appBar,
body: // your widget
);
}
В
AppBar
высота будет учитываться в строке состояния устройства и т. д., поэтому нет необходимости удалять вставку вручную.