Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 颤振嵌套滚动视图+;TabBarView+;刷新指示错误 对NestedScrollView使用文档示例代码,但存在许多问题。 如果未设置SliderAppBar的expandedHeight,请在内部设置listview tabbarv_Flutter_Flutter Layout - Fatal编程技术网

Flutter 颤振嵌套滚动视图+;TabBarView+;刷新指示错误 对NestedScrollView使用文档示例代码,但存在许多问题。 如果未设置SliderAppBar的expandedHeight,请在内部设置listview tabbarv

Flutter 颤振嵌套滚动视图+;TabBarView+;刷新指示错误 对NestedScrollView使用文档示例代码,但存在许多问题。 如果未设置SliderAppBar的expandedHeight,请在内部设置listview tabbarv,flutter,flutter-layout,Flutter,Flutter Layout,颤振嵌套滚动视图+;TabBarView+;刷新指示错误 对NestedScrollView使用文档示例代码,但存在许多问题。 如果未设置SliderAppBar的expandedHeight,请在内部设置listview tabbarview无法垂直滚动 所以我评论Sliver 和Sliver代码,可以垂直滚动 要不是 在tabbarview中保留每个页面,我使用 AutomaticKeepAliveClientMixin和wantKeepAlive设置为true 每一个 页

颤振嵌套滚动视图+;TabBarView+;刷新指示错误 对NestedScrollView使用文档示例代码,但存在许多问题。
  • 如果未设置SliderAppBar的expandedHeight,请在内部设置listview tabbarview无法垂直滚动
  • 所以我评论Sliver 和Sliver代码,可以垂直滚动
  • 要不是 在tabbarview中保留每个页面,我使用 AutomaticKeepAliveClientMixin和wantKeepAlive设置为true
  • 每一个 页面有刷新指示器,当swip刷新一个页面时,另一个页面 所有页面在刷新时触发并同时显示刷新进度 并且所有页面滚动位置都同步到同一位置
类MyApp扩展了无状态小部件{
//此小部件是应用程序的根。
@凌驾
小部件构建(构建上下文){
返回材料PP(
标题:“颤振演示”,
主题:主题数据(
主样本:颜色。蓝色,
),
主页:MyHomePage(标题:“颤振演示”),
);
}
}
类MyHomePage扩展StatefulWidget{
MyHomePage({Key,this.title}):超级(Key:Key);
最后的字符串标题;
@凌驾
_MyHomePageState createState()=>\u MyHomePageState();
}
类_MyHomePageState扩展状态{
最终列表_选项卡=[
“AAA”,
“BBB”,
“CCC”,
“DDD”,
“EEE”,
“FFF”,
];
@凌驾
小部件构建(构建上下文){
返回DefaultTabController(
长度:_tabs.length,//这是选项卡的数量。
子:嵌套滚动视图(
headerSliverBuilder:(BuildContext上下文,boolInnerBoxIsCrolled){
//这些是“外部”滚动视图中显示的碎片。
返回[
//银光吸收器(
//此小部件采用滑动条的重叠行为,
//并将其重定向到下面的SliverOverlap喷油器。如果是
//缺少,则可能是嵌套的“内部”滚动视图
//在滑动杆下方结束,即使在内部
//滚动视图认为它尚未滚动。
//如果“headerSliverBuilder”仅生成
//不与下一条重叠的小部件。
//句柄:NestedScrollView.SliverOverlapsAberHandleFor(上下文),
//条子:
滑杆(
标题:const Text('Books'),//这是应用程序栏中的标题。
对,,
浮动:假,
快照:错,
//“ForceHighted”属性导致SliverAppBar显示
//阴影。当
//内部滚动视图滚动超过其“零点”,即。
//当它显示为滚动到滑动条下方时。
//如果不这样做,就会出现阴影
//或者不适当地出现,因为滑动条是
//实际上不知道内胎的准确位置
//滚动视图。
强制提升:内包装箱为羊角形,
底部:选项卡栏(
isScrollable:是的,
//这些是要放在选项卡栏的每个选项卡中的小部件。
tabs:_tabs.map((字符串名称)=>Tab(文本名称)).toList(),
),
),
//            ),
];
},
正文:选项卡视图(
//这些是选项卡视图的内容,位于选项卡下方。
子项:_tabs.map((字符串名称){
返回安全区(
上图:错,
底部:错误,
孩子:建筑工人(
//需要此生成器来提供
//“在”NestedScrollView中,以便
//SliverOverlapperAberHandleFor()可以找到
//嵌套滚动视图。
生成器:(BuildContext上下文){
返回刷新指示器(子项:CustomScrollView(
//“控制器”和“主要”成员应保留
//取消设置,以便NestedScrollView可以控制此设置
//内部滚动视图。
//如果设置了“控制器”属性,则此滚动
//视图将不会与NestedScrollView关联。
//PageStorageKey应该是此滚动视图的唯一键;
//它允许列表在运行时记住其滚动位置
//选项卡视图不在屏幕上。
密钥:PageStorageKey(名称),
条子:[
//滑动式喷油器(
////这是SliverOverlap吸收器的另一面
////以上。
//句柄:NestedScrollView.SliverOverlapsAberHandleFor(上下文),
//                      ),
填缝料(
填充:常量边集。全部(0),
//在本例中,内部滚动视图具有
//固定高度列表项,因此使用
//SliverFixedExtentList。但是,可以使用任何
//此处的小部件,例如小部件列表或小部件网格。
条子:TabPage(),
),
],
),onRefresh:()=>Future.delayed(持续时间(秒:5));
},
),
);
}).toList(),
),
),
);
}
}
类TabPage扩展StatefulWidget{
@凌驾
状态createState(){
返回_TabPageState();
}
}
类_TabPageState使用AutomaticEpaLiveClientMixin扩展状态{
@凌驾
bool get wantKeepAlive=>true;
@凌驾
小部件构建(构建上下文){
super.build(contex