防止FlexibleSpaceBar在合拢和浮动为真时隐藏

时间:2019-02-12 09:37:12

标签: flutter expandablelistview appbar flutter-sliver

为了在用户向上滚动时扩展我的Flexible Space Bar,我在相应的SliverAppBar上将float设置为true。 但是,当可折叠空格键折叠时,其不透明度从1变为0:

enter image description here

我的代码如下

import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      home: Scaffold(
          body: CustomScrollView(
            slivers: <Widget>[
              SliverAppBar(
                pinned: true,
                floating: true,
                backgroundColor: Colors.green,
                expandedHeight: 200.0,
                flexibleSpace: FlexibleSpaceBar(
                  titlePadding: EdgeInsets.all(0.0),
                  title: Text('test'),
                ),
              ),
              SliverFixedExtentList(
                itemExtent: 150.0,
                delegate: SliverChildListDelegate(
                  [
                    Container(color: Colors.red),
                    Container(color: Colors.purple),
                    Container(color: Colors.green),
                    Container(color: Colors.orange),
                    Container(color: Colors.yellow),
                    Container(color: Colors.pink),
                    Container(color: Colors.red),
                    Container(color: Colors.purple),
                    Container(color: Colors.green),
                    Container(color: Colors.orange),
                    Container(color: Colors.yellow),
                    Container(color: Colors.pink),
                  ],
                ),
              ),
            ],
          )
      ),
    );
  }
}

如果我仍然想要浮动效果,如何防止它在折叠时隐藏起来?

1 个答案:

答案 0 :(得分:0)

我已经尝试了您分享的代码,但 SliverAppBar 中的文本不会改变其不透明度。我目前运行的是 Flutter 2.2.1 版。

enter image description here

我还检查了是否可能存在与此问题相关的旧错误,但我什么也没找到。我建议尝试使用最新版本的 Flutter 再次运行相同的代码来解决问题。