我在 Flex 移动应用程序中使用 SpinnerList 组件,微调器旋转速度太快,无法满足我的需要,是否有任何方法可以降低其速度。
关于鼠标滚轮的速度有很多答案,但没有关于旋转器本身的答案。
最佳答案
我快速浏览了一下 Flex 源代码:
我认为 SpinnerList 滚动由普通 Scroller 使用,就像普通 List 组件一样。
Scroller 类使用 TouchScrollHelper 类。这个类包含一个calculateThrowVelocity(),这个方法使用一些常量,比如VELOCITY_WEIGHTS
但是,这个方法和常量都是私有(private)的,因此您无法通过扩展类来修改它。此外,Scroller 中的 touchScrollHelper 属性也是私有(private)的。
所以,恐怕修改速度/惯性的唯一方法是通过复制原始代码中的大部分代码,使用自定义 TouchScrollHelper 创建自定义 Scroller,但是自定义的calculateThrowVelocity() 您可以添加自定义 Scroller使用皮肤添加到 SpinnerList。
关于apache-flex - 如何降低flex移动SpinnerList组件的滚动速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9873043/