请问depth的值是怎么算的?

来源:8-5 自定义AppBar实现滚动渐变【另起炉灶】

慕UI8482615

2020-07-23

虽然视频说listView是第一个child,所以才多加depth = 0的判断,我就尝试打印一下不加此判断的notification值,发现depth是1,这个1我就不明白了,如图:
图片描述
因为listView里第一个child是Center,Center里的child才是Swiper,既然0是listView,那么1就应该是Center吧,然后我试着给Swiper加多几个容器widget套着它,打印出来的depth还是1,所以不明白depth值是怎么算的

写回答

1回答

CrazyCodeBoy

2020-07-27

scrollnotification.depth表示的是界面中发生滚动的widget,如果界面中有10个widget嵌套,里面有两个widget发生了滚动,那个从外向内第一个发生滚动的widget的depth是0第二个是1;
以课程代码为例因为listview在Swiper的外层,而且两个都发生了滚动,所以depth 0代表的是listview,depth 1代表的是Swiper。

0
1
慕UI8482615
谢谢老师,这下明白了
2020-07-27
共1条回复

Flutter从入门到进阶 实战携程网App 一网打尽核心技术

解锁Flutter开发新姿势,,系统掌握Flutter开发核心技术。

4788 学习 · 3274 问题

查看课程