安卓滚动事件中使用setData,渲染延迟问题
发布于 5 年前 作者 mtao 14384 次浏览 来自 问答

以上代码逻辑为:监听一个scroll-view的滚动事件,滚动到一定程度时setData一次,不会有连续setData;

如果滚动的时候按住滚动,一段时间后才放开,打印出来的时间差会很大;

如果滚动的时候是滑动一点则放开,然后再次滑动,打印出来的时间差就会比较小;

以上问题只有在安卓机上会出现,估计是在滚动时,setData的渲染会延迟到本次滚动结束才会进行。

在写吸顶效果,返回顶部时经常会用到滚动事件监听,这个有办法解决吗??

官方人员看下,之前社区也好多关于吸顶的帖子,都是同样的问题,至今没找到解决方案。

2019.1.14补充:

问题已解决;解决方案:

在相应的页面配置的json文件中加入以下代码

{

  "usingComponents": {}

}

至于为什么,可以参考

https://developers.weixin.qq.com/community/develop/doc/0006a6c1bc4aa88ebcd73fb7156400

9 回复

scroll-view的滚动事件中的scrollTop不是距离scroll-view顶部的距离吧,好像是一次滚动的滚动距离;

你可以试试view的onPageScroll事件

请问这问题解决了吗?我也遇到一样的问题

同样遇到这个问题,想要做个滑动到顶部一段距离的动态吸顶效果,页面滚动一段时间后,再setData,延迟好久。

不管是用WXML节点相交,还是在页面的onPageScroll中监听,只要是滑动过后再setData,都有这个问题,好难受

楼主这个问题解决了吗?

在android上不断setData会出现一些性能问题。

做了个九宫格抽奖的效果,在70~200ms的间隔内不断的setData改变格子的active状态,在ios上能正常显示,在android下会出现跳格现象,就是有些格子的active状态还没显示就跳过了。

美团小程序这个效果做出来了,不知如何实现的

不知道他们怎么做的啊,也没有源码,哭

官方还没有解决方案,等吧

好坑啊,,,我在ios上做了个贼酷炫的吸顶效果,结果安卓一测试,就跟狗屎一样卡;

回到顶部