Прозрачная строка состояния во флаттере - PullRequest
0 голосов
/ 17 марта 2019

Я только начал использовать флаттер и android studio, и мне было интересно, есть ли способ сделать прозрачную строку состояния, такую ​​как рис на Android (без перехода от строки состояния к appBar).Когда я пытаюсь установить цвет строки состояния, она приобретает другой оттенок, чем панель приложения.Спасибо

Ответы [ 2 ]

2 голосов
/ 18 марта 2019

Да, это возможно на Android .

Для этого вы можете использовать SystemChrome. Этот класс предоставляет метод setSystemUIOverlayStyle, и вы можете использовать его следующим образом:

import 'package:flutter/services.dart';

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

Имейте в виду, что это будет работать только для версий Android, равных или превышающих Android M, и что вам нужно будет рисовать ниже строки состояния, избегая заполнения, которое автоматически добавляется Scaffold. Вы можете сделать это, используя:

...body: SafeArea(top: false, child: ...
0 голосов
/ 18 мая 2019

Вы можете использовать виджет AnnotatedRegion с SystemUiOverlayStyle для изменения стилей хрома.

import 'package:flutter/services.dart';

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return AnnotatedRegion<SystemUiOverlayStyle>(
      value: SystemUiOverlayStyle(
        statusBarColor: Colors.transparent,
      ),
      child: Scaffold(...),
    );
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...