[闲聊] GridView in ScrowView卷动不顺畅解法

楼主: Deltaguita (伯利兹)   2014-09-01 17:35:40
不知道板上有没有使用者同样尝试过把GridView 或是ListView放进scrowView?
网络有蛮多相关的解法小弟就不献丑了
例如:
http://stackoverflow.com/questions/4523609/grid-of-images-inside-scrollview
但是小弟想问问不知道各位有没有遇到卷动不顺畅的情形呢?
一些类似的提问:
http://my.oschina.net/u/174250/blog/146265
http://www.eoeandroid.com/thread-201964-1-1.html
里面的回答大多是加载资料过久造成的,网友建议分次加载
小弟对于这些回达感到疑惑,所以分别监控一下onMeasure、getView的次数与时间
监控完我发现这并不是造成滚动不顺畅的原因,
实际上在我们复写gridView的onMeasure方法后,
adapter的每个Item只需要执行一次getView就行了,
加载资料并不会造成后续ScrowView卷动不顺畅的情形
问题的线索似乎到这里就断了
后来我又突然想到 被覆写onMessure的gridView可以视为一种客制UI元件
所以我又用客制原件跟scrow 这个关键字去查资料
后来找到了这篇文章
http://blog.csdn.net/internetman/article/details/7098363
节录第一小段:
启用硬件加速的最简单方法就是为整个系统打开硬件加速的全局设置。
如果你的程序是标准View或者是Drawable 则硬件加速的全局设这并不会造成不良的影响。
然而硬件加速并不支持所有2D画的操作,
所以开启硬件加速可能会对使用自定义组件的应用程序造成影响,
问题常常表现在不可见的元素异常和错误的像素渲染,
为了解决这个问题Android可以让你选择启动或者禁用以下级别的硬件加速:
--
所以小弟在Android Manifest 加入了这一行code
android:hardwareAccelerated="false"
滚动到gridView时的卡顿问题果然改善许多,流畅度只比原生的元件差上一点
应该是关闭硬件加速的关系,但完全是可以接受的范围,有兴趣的板友可以实验看看
作者: zerofinal (人生~)   2014-09-01 18:04:00
推一个

Links booklink

Contact Us: admin [ a t ] ucptt.com