web-dev-qa-db-ja.com

FlutterのAppBarの高さ

FlutterでAppBarの高さを取得するにはどうすればよいですか?
MarialApp Widget( 'package:flutter/material.Dart')を使用しています。

コンテキストの高さがあるので、アプリバーの高さを差し引きたいです。

final double height = MediaQuery.of(context).size.height;
12
R2T8

これは理想的な方法ではありませんが、うまくいくと思います。

まずAppBarで使用するScaffoldウィジェットを宣言します。

Widget demoPage() {
  AppBar appBar = AppBar(
    title: Text('Demo'),
  );
  return Scaffold(
    appBar: appBar,
    body: /*
    page body
    */,
  );
}

NowappBarを使用して、preferredSizedの-​​heightを取得できます。

double height = appBar.preferredSize.height;

この高さを使用して、画面の高さから減らすことができます。

final double height = MediaQuery.of(context).size.height;
18
ap14

通常のツールバーの高さには定数があります:kToolbarHeight

1
Daniel Illescas

以下を使用して、AppBarの高さを取得できます。

double height = appBar.preferredSize.height;

AppBarウィジェットを宣言していることを確認してください。

1
goops17

あらかじめ設定されたサイズを使用する

//defined as
Size preferredSize

好ましいサイズは、高さがkToolbarHeightと下部ウィジェットの優先高さの合計であるサイズです。

Scaffoldはこのサイズを使用してアプリバーの高さを設定します。

PreferredSizeWidgetを実装するアプリバークラスで以下のように定義されます

 preferredSize = new Size.fromHeight(kToolbarHeight + (bottom?.preferredSize?.height ?? 0.0))

たとえばリンク...

https://github.com/flutter/flutter/blob/master/packages/flutter/lib/src/material/app_bar.Dart

0

これを使用できます:

var height = AppBar().preferredSize.Height;

この方法は非常にサンプルで簡単です

0
M. Soltani