如何解决如何使用extendBodyBehindAppBar = false使SliverAppbar像Scaffold Appbar一样
您好,我正在制作 sliverAppbar,其中包含由 animationContainer 和 Listview 组成的内容。 我想删除 sliverAppbar 下方的空间,以便可以完全看到animatedContainer。 我怎样才能做到这一点? 在 Scaffold Appbar 中,默认情况下可以实现这一点,因为默认值 extendBodyBehindAppBar = false 这是我的代码
class _TaskPageState extends State<TaskPage> {
bool selected = true;
final List<Task> tasks = <Task>[];
final TextEditingController textEditingController = TextEditingController();
double expandheight = 0;
@override
void dispose() {
textEditingController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return nestedScrollView(
headerSliverBuilder: (BuildContext context,bool innerBoxIsScrolled) {
return <Widget>[
SliverAppBar(
title: Text('nestedScrollView'),leading: GestureDetector(
onTap: () {
setState(() {
selected = selected ? false : true;
});
print(selected);
},child: Text('Tapme'),),backgroundColor: Colors.white,flexibleSpace: Placeholder(),floating: true,pinned: true,expandedHeight: 100,];
},body: Column(
children: <Widget>[
AnimatedContainer(width: 300,height: selected ? 200.0 : 0.0,alignment: selected
? Alignment.bottomCenter
: AlignmentDirectional.topCenter,duration: Duration(milliseconds: 500),decoration: Boxdecoration(
border: selected
? Border.all(color: Colors.black,width: 3)
: Border.all(color: Colors.red,width: 3),gradient: new LinearGradient(
begin: FractionalOffset.topCenter,end: FractionalOffset.bottomCenter,colors: selected
? [Colors.lightGreen,Colors.redAccent]
: [Colors.orange,Colors.deepOrangeAccent],stops: [0.0,1.0],color: selected ? Colors.red : Colors.blue,curve: Curves.fastOutSlowIn,child: Flutterlogo(size: 200),Expanded(
child: ListView.builder(
shrinkWrap: true,itemCount: tasks.length + 1,itemBuilder: (BuildContext context,int index) {
if (index >= tasks.length) {
return Form(
child: TextField(
controller: textEditingController,onEditingComplete: () {
tasks.add(Task(textEditingController.text));
setState(() {});
},));
}
return ListTile(
title: Text(tasks[index].name),);
}),],));
}
}
当我向下滚动页面时,我想实现这样的目标。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。