Как изменить цвет строки состояния в Flutter? - PullRequest
0 голосов
/ 25 сентября 2018

Я пытаюсь изменить цвет строки состояния на белый.Я нашел этот паб на флаттере https://pub.dartlang.org/packages/flutter_statusbarcolor. Я пытался использовать пример кода в моих файлах дартс (основной и других).

Ответы [ 7 ]

0 голосов
/ 27 июня 2019

попробуйте это:

return MaterialApp(
    ...
    theme: ThemeData(
        primarySwatch: Colors.deepPurple
    ),
    ...
);
0 голосов
/ 21 августа 2019

Я не могу комментировать непосредственно в теме, поскольку у меня пока нет необходимой репутации, но автор спросил следующее:

единственная проблема в том, что фон белый, ночасы, беспроводные и другие текст и значки также белого цвета .. Я не уверен, почему !!

Для всех, кто заходит в эту ветку, вот что сработало для меня.Цвет текста в строке состояния определяется константой яркости в flutter/material.dart.Чтобы изменить это, настройте решение SystemChrome так, чтобы настроить текст:

    SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
      statusBarColor: Colors.red,
      statusBarBrightness: Brightness.dark,
    ));

Возможные значения для Brightness: Brightness.dark и Brightness.light.

Документация:https://api.flutter.dev/flutter/dart-ui/Brightness-class.html https://api.flutter.dev/flutter/services/SystemUiOverlayStyle-class.html

0 голосов
/ 26 июня 2019

Вы также можете настроить с помощью этой библиотеки eazy и short flutter_statusbarcolor 0.2.0

0 голосов
/ 26 июня 2019

в службе импорта файлов main.dart, например, следуйте

  import 'package:flutter/services.dart';

и в методе сборки просто добавьте эту строку перед возвратом

SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
    statusBarColor: Colors.orange
)); 

Вот так:

@override
 Widget build(BuildContext context) {
   SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
       statusBarColor: CustomColors.appbarcolor
    ));
    return MaterialApp(
    home: MySplash(),
    theme: ThemeData(
      brightness: Brightness.light,
      primaryColor: CustomColors.appbarcolor,
    ),
  );
 }
0 голосов
/ 28 октября 2018

Вы можете использовать класс SystemChrome для изменения строки состояния и цвета панели навигации.Первый импорт

import 'package:flutter/services.dart';

После этого вам нужно добавить следующие строки (лучшее место для размещения этих строк в вашем методе main())

void main() {
  SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
    systemNavigationBarColor: Colors.blue, // navigation bar color
    statusBarColor: Colors.pink, // status bar color
  ));
}
0 голосов
/ 25 сентября 2018

То, что вы хотите, это темы.Они важны гораздо больше, чем цвет AppBar.

https://flutter.io/cookbook/design/themes/

0 голосов
/ 25 сентября 2018

Прекрасно работает в моем приложении

import 'package:flutter_statusbarcolor/flutter_statusbarcolor.dart';

void main() => runApp(new MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    FlutterStatusbarcolor.setStatusBarColor(Colors.white);
    return MaterialApp(
      title: app_title,
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: HomePage(title: home_title),
    );
  }
}

UPD: Другое решение

SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
  statusBarColor: Colors.white
));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...