<强>概述结果 我使用的是listfield类垂直显示的一组信息。该listfield的每一行占用的屏幕高度的2/5的

因此,(通过显示屏幕高度的限制部分模糊的项目时尤其),整个滚动/聚焦动作是非常紧张。滚动到下一个项目时

我想通过实现涡旋盘之间平滑滚动/聚焦动作来解决这个跳动。这是可能与ListField类?

示例结果 下面就在眼前显示问题的屏幕截图。

“ALT文本” 结果 <子>(来源: perkmobile.com

在用户向下滚动到ListFieldTHREE行,此行被“滚动”到视图中一个很紧张的方式,没有平滑滚动。我知道做行高度越小缓解这个问题,但我不婉走那条路。

主要问题结果 如何做到平滑的滚动ListField?

有帮助吗?

解决方案

假设你想要的用户向下滚动1“点击”轨迹球,然后下一个项目是突出但不是立即滚动跳你得到一个平滑滚动,使新项目可见的(就像谷歌的行为黑莓Gmail应用程序),你必须推出自己的组件。

的基本思想是继承VerticalFieldManager,然后在滚动(键断moveFocus法)你有一个单独的线程更新垂直位置可变的,并且多次无效经理。

在线程,因为如果你想想看你驾驶的动画关闭用户事件是必要的 - 平滑滚动真的是对黑莓的动画,因为它持续时间比触发它的事件不再

我一直对细节有点含糊了,这是不是一个非常容易的事,所以希望这有助于一点。

其他提示

有没有这样做,据我所知的官方API的方式,但大概可以通过巧妙地利用NullField(Field.FOCUSABLE),这是黑莓手机的用户界面工具多少定制被迫焦点行为不置可否。

一个办法是从该交织可聚焦NullFields与列表项本身的可视内容的类派生每个“列表项” - 这将基本上迫使滚动系统,以“跳”在较小的区间,而不是大间隔由列表项之间的自然分裂决定的,并且会对不修改的列表项的内容的可见定位的附带好处。

除非你想重写如何listfield油漆或创建自己的包装,你将永远有这个问题,这是因为各行滚动时始终可见。尝试使用的labelField代替。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top