当我在Flutter中使用appBar时,Android导航栏颜色从默认白色(在奥利奥)变为黑色,为什么?

问题描述 投票:1回答:2

因此,当我使用appBar时,我的问题意味着我的Android Nav Bar颜色从其在Oreo中的默认白色变为Black

因此,当我的应用程序启动我的第一个脚手架时,不使用应用栏并且只有一个带有一些内容的主体,但当我更新状态并将其替换为带有新主体的新脚手架和Android Oreo设备中的应用栏默认的白色导航栏颜色变为黑色,如果我删除应用栏它不会发生,反正我可以阻止这个?

如果这很重要,这就是我的颤动医生的结果:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v0.5.1, on Mac OS X 10.12.6 16G1408, locale en-IN)
[✓] Android toolchain - develop for Android devices (Android SDK 28.0.2)
[✓] iOS toolchain - develop for iOS devices (Xcode 9.2)
[✓] Android Studio (version 3.1)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[!] VS Code (version 1.26.1)
[✓] Connected devices (1 available)

! Doctor found issues in 1 category.

编辑:

通过导航栏,我的意思是Android的软件导航按钮在底部而不是状态栏,这个导航栏包含“Home”,“Recent”和“Back”按钮,像Galaxy S7这样的设备有硬件按钮而不是软件的。

android flutter android-8.0-oreo flutter-layout
2个回答
0
投票

AppBar在内部创建了一个由Flutter的本机UI绑定处理的AnnotatedRegion<SystemUiOverlayStyle>小部件。它使状态栏变暗或变亮。


在带有AppBar的屏幕上,您可以使用其brightness属性来更改状态栏颜色:

AppBar(
  brightness: Brightness.light,
  title: new Text('Flutter Test'),
)

Brightness.light导致状态栏显示黑色图标/文本。


在没有AppBar的屏幕上,您可以使用AnnotatedRegion<SystemUiOverlayStyle>设置状态栏的颜色。


0
投票

看起来这是一个颤动的sdk的错误,最近的更新导航栏颜色不再自动更改使用AppBar,任何人的参考这是我的颤动医生结果

    Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v0.6.0, on Mac OS X 10.12.6 16G1408, locale en-IN)
[✓] Android toolchain - develop for Android devices (Android SDK 28.0.2)
[✓] iOS toolchain - develop for iOS devices (Xcode 9.2)
[✓] Android Studio (version 3.1)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] VS Code (version 1.26.1)
[✓] Connected devices (1 available)
© www.soinside.com 2019 - 2024. All rights reserved.