Как сделать так, чтобы верхняя часть FlexibleSpaceBar начиналась в нижней части SliverAppBar

#flutter #dart

#flutter #dart

Вопрос:

Возможно ли сделать так, чтобы гибкая панель начиналась с нижней части SliverAppBar?

Мне действительно нравятся эффекты, которые есть у FlexibleSpaceBar, но единственный способ, которым я в настоящее время могу это сделать, — добавить немного отступов сверху, например, 50 пикселей или около того.

 import 'package:flutter/material.dart';

class AccountScreen extends StatefulWidget {
  static const routeName = '/account';

  @override
  _AccountScreenState createState() => _AccountScreenState();
}

class _AccountScreenState extends State<AccountScreen> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.grey[900],
      drawer: Drawer(),
      body: SafeArea(
          child: CustomScrollView(
        slivers: <Widget>[
          SliverAppBar(
            title: Text('Title'),
            expandedHeight: 200,
            flexibleSpace: FlexibleSpaceBar(
              background: Column(
                children: <Widget>[
                  Text('Some Text')
                ],
              ),
            ),
          ),
        ],
      )),
    );
  }
}
  

введите описание изображения здесь

Как вы можете видеть, панель FlexibleSpaceBar начинается в верхней части экрана за панелью SliverAppBar

Комментарии:

1. Я обновил некоторые примеры кода и изображения

Ответ №1:

Я использую в качестве этого. Таким образом, верхняя часть FlexibleSpaceBar начинается с нижней части SilverAppBar.

 SliverAppBar(
    elevation: 0,
    expandedHeight: 300,  // your wanted height
    flexibleSpace: FlexibleSpaceBar()
)
            
  

Комментарии:

1. Привет, спасибо за ответ .. Я обновил свой вопрос с помощью некоторого кода и изображения.