Egret社区
1银子
我想封装一个下拉刷新上拉加载的列表页, 但是在设置回弹这边卡住了  当下拉到一定距离松手时如图所示 scroller应该回弹到转动菊花的上方位置 然后获取数据之后 再回弹到默认0位置 哪位大神给个思路

1.png
分享到 :
1 人收藏

6 个回复

倒序浏览
nodep  渐入佳境 | 2017-12-13 16:04:25
在外面用一个Group封装一下,手动控制scroller的Y在加载时。内容和加载中的提示分开布局。这样做会简单很多
乐观的见鬼了  初窥堂奥 | 2017-12-13 16:06:45
nodep 发表于 2017-12-13 16:04
在外面用一个Group封装一下,手动控制scroller的Y在加载时。内容和加载中的提示分开布局。这样做会简单很多 ...

就是分开布局的呀  内容和上面的提示 两个view是同一层级的 但是scroller的回弹怎么解决咧
nodep  渐入佳境 | 2017-12-13 16:10:34
乐观的见鬼了 发表于 2017-12-13 16:06
就是分开布局的呀  内容和上面的提示 两个view是同一层级的 但是scroller的回弹怎么解决咧 ...

初始化时,设置内容容器y=0.假设加载中容器高度50
1.当下拉超过50时,change_end的时候,通知外层添加加载中的组件,并从新排列组件加载中y=0,内容容器y=50(这个过程可以用tween)
2.当消息返回或超时,在你删除加载中的时候。奖内容容器y设置到0(这个过程可以用tween)。大概思路就是这样的。至于什么时候改变内容容器的y就是很灵活的了,你希望达到什么效果就可以怎么做。
nodep  渐入佳境 | 2017-12-13 16:11:15
本帖最后由 nodep 于 2017-12-13 16:15 编辑
乐观的见鬼了 发表于 2017-12-13 16:06
就是分开布局的呀  内容和上面的提示 两个view是同一层级的 但是scroller的回弹怎么解决咧 ...

这里的回弹,不算Scr的内容回弹,这里就是你需要手动处理的地方。互不干扰,容器本身y的移动,不是内容的移动。内容整体随容器移动的,这个一旦用混了,你做起来就很吃力了。一定不能互相干扰。
乐观的见鬼了  初窥堂奥 | 2017-12-13 16:41:04
nodep 发表于 2017-12-13 16:10
初始化时,设置内容容器y=0.假设加载中容器高度50
1.当下拉超过50时,change_end的时候,通知外层添加加 ...

按照你说的流程应该是  向下拉超过50时 scroller先回弹到0 然后Tween动画设置scrollV = -50 , 是这么个过程吧?因为我看change_end 是回弹到0时才触发的
nodep  渐入佳境 | 2017-12-13 17:50:37
乐观的见鬼了 发表于 2017-12-13 16:41
按照你说的流程应该是  向下拉超过50时 scroller先回弹到0 然后Tween动画设置scrollV = -50 , 是这么个 ...

说了tween控制的不是scrollV,控制的是容器自己本身的坐标。你不用change_end触发就好了呀。可以超过就添加一个松开加载更多数据,这个时候就已经改变Y了。change_end的时候请求数据就好了。不要老陷入自己思考的圈子,我一直强调这里重点是控制y,scrollV不需要你去手动控制
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部