Egret社区
2银子
本题已加入常见问题汇总 » EUI 相关问题汇总,更多EUI 相关问题汇总相关的话题欢迎关注讨论


1、初始化时eui.list绑定itemRendererSkinName皮肤,该item皮肤有不同的状态,不同状态下的高度是不一的,比如差个100像素。当使用代码控制滚动条滚动到底部时,并没有滚动到底部。
代码:延迟打印出viewport.contentHeight是不正确,但是在egret inspector看到的contentHeight与打印出的不一致,应该是正常的。
this.commonScroller.viewport.scrollV = this.commonScroller.viewport.contentHeight - this.commonScroller.height;

2、新增item时
当代码设置eui.list添加一个新的item时,addItem();然后延迟时间手动滚动到最后也是不行,会出现滚动的像素很少的情况(应该是该item的那个高度最低的状态皮肤)。总的就是滚动的像素不是新增加的那个item的当前状态下的高度。

3、当该滚动条参差不齐的item的不同状态时(高度不一),当手动触摸下拉上啦滚动的时候,会出现滚动的视图不平滑的情况,突然间一跳一跳的,视图会出现滚动误差
请问:该如何解决?

ScrollerProject.zip

1.01 MB, 下载次数: 17, 下载积分: 银子 -1

demo

最佳答案

查看完整内容

scrollV不准确是因为每个ItemRender高度不一致,这时候关闭虚拟布局就可以了 一跳一跳的是因为拖动过程触发了ItemRender的点击,ItemRender想切换为up状态,但是states中只有text和image状态,找不到up状态就默认切换text状态了。所以有的image状态变成text状态,表现上就像是一跳一跳了。你这样用state是不对的,ItemRenderer的state只能是up down这些的 ...
分享到 :
0 人收藏

6 个回复

倒序浏览
egret-Jerry  官方团队 | 2017-8-20 18:27:11
scrollV不准确是因为每个ItemRender高度不一致,这时候关闭虚拟布局就可以了

一跳一跳的是因为拖动过程触发了ItemRender的点击,ItemRender想切换为up状态,但是states中只有text和image状态,找不到up状态就默认切换text状态了。所以有的image状态变成text状态,表现上就像是一跳一跳了。你这样用state是不对的,ItemRenderer的state只能是up down这些的
Jom  登堂入室 | 2017-8-22 17:34:05
本帖最后由 Jom 于 2017-8-22 18:12 编辑
egret-Jerry 发表于 2017-8-22 17:07
scrollV不准确是因为每个ItemRender高度不一致,这时候关闭虚拟布局就可以了

一跳一跳的是因为拖动过程触 ...

疑点:1、在egret inspector浏览器插件看到的viewport的contentHeight与代码打印出的不一致,是正确的,为什么?

2、如果我把text与image状态改成 up和down,就不会 出现一跳一跳的? 应该会吧,因为我自己有对eui.itemrenderer进行封装,找不到up与down状态,但是我找到自己设置的状态的,是不会出现找不到状态被设置成默认状态去,应该还是高度差不同造成的。
Jom  登堂入室 | 2017-8-22 17:41:35
egret-Jerry 发表于 2017-8-22 17:07
scrollV不准确是因为每个ItemRender高度不一致,这时候关闭虚拟布局就可以了

一跳一跳的是因为拖动过程触 ...

在开启虚拟布局中,只要itemRenderer的高度不一致就会出现一跳一跳的,因为 可能会 高度高的那个itemRenderer被拿去复用,复用后变成高度低的状态,就会出现高度差的一跳一跳的感觉。是不是这样解释的?
egret-Jerry  官方团队 | 2017-8-22 18:13:17
Jom 发表于 2017-8-22 17:34
疑点:1、在egret inspector浏览器插件看到的viewport的contentHeight与代码打印出的不一致,是正确的, ...

我这边把虚拟布局关了,看到的contentHeight值是一样的,都是2000

你改成up,down也会一跳一跳啊,本质是显示图片和文本高度不一致,状态一切换肯定跳
Jom  登堂入室 | 2017-8-22 19:05:59
egret-Jerry 发表于 2017-8-22 18:13
我这边把虚拟布局关了,看到的contentHeight值是一样的,都是2000

你改成up,down也会一跳一跳啊,本质 ...

嗯嗯,我知道了。
但是在开启虚拟布局下,
在egret inspector浏览器插件看到的viewport的contentHeight与代码打印出的不一致,是正确的,为什么?
egret-Jerry  官方团队 | 2017-8-23 10:45:33
Jom 发表于 2017-8-22 19:05
嗯嗯,我知道了。
但是在开启虚拟布局下,
在egret inspector浏览器插件看到的viewport的contentHeight与 ...

我这看的是一样的都是2000
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

返回顶部