Прозрачная панель приложений - PullRequest
0 голосов
/ 07 октября 2019

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

Я хочу, чтобы содержимое страницы находилось на одном уровне с верхней частью страницы,как будто нет панели приложений, а затем прозрачная панель приложений скользит в поле зрения, как SliverAppBar, так что у меня просто есть несколько кнопок действий, перекрывающих верхнюю часть страницы.

Как мне это сделать? Есть ли способ сложить панель приложения или изменить поля, чтобы она не занимала место?

1 Ответ

1 голос
/ 08 октября 2019

Вы можете просто положить эшафот и свою «страницу» в stack(), убедитесь, что эшафот является последним элементом в стеке. Вы можете сами создавать анимацию и добавлять анимацию для панелей приложений или даже использовать небольшую панель приложений, просто убедитесь, что вы используете один и тот же контроллер прокрутки для панели приложений и содержимого.

Например:

 @override
  Widget build(BuildContext context) {
    return Stack(
      children: <Widget>[
        // Your content
        Container(
          color: Colors.pink,
        ),

        Scaffold(
          appBar: AppBar(
            title: Text("heading"),
            bottom: AppBar(
              title: Text("footer"),
            ),
          ),
        ),
      ],
    );
  }
...