如何判断Flex Spinner List是否还在旋转?

时间:2014-03-02 08:09:33

标签: actionscript-3 flex

我在Flex Spinner列表中遇到问题,我在其中选择一个选项并单击一个按钮。按钮的作用取决于在微调器列表中选择的选项。问题是,有时我的屏幕上显示的索引是 实际当前索引。

我假设这是因为一旦我点击了按钮,Spinner List就没有进入完成停止(虽然对我来说,作为用户 - 它似乎不是再移动了。)

有人对此有任何疑问吗?任何人都知道如何判断旋转器列表是否已停止旋转?

1 个答案:

答案 0 :(得分:0)

经过进一步研究,我的问题似乎没有优雅的解决方案,因此我编写了以下解决方法(针对移动应用程序):

import mx.events.TouchInteractionEvent; 
protected var isScrolling:Boolean=false; //variable to keep up with touch interaction

然后在creationCompleteHandler()中添加以下事件处理程序:

myList.scroller.addEventListener(TouchInteractionEvent.TOUCH_INTERACTION_START, myListTouchStart);
myList.scroller.addEventListener(TouchInteractionEvent.TOUCH_INTERACTION_END, myListTouchEnd);

然后我跟上它是否在我的变量的新事件处理程序中手动滚动:

protected function myListTouchStart(e:TouchInteractionEvent):void {
            isScrolling=true;
        }

protected function myListTouchEnd(e:TouchInteractionEvent):void {
            isScrolling=false;
        }

这不是最漂亮的解决方法,但每次都可以完成工作,没有任何错误。希望它可以帮助有类似问题的人。