区分Flex Mobile应用程序中的滚动和滑动

时间:2015-05-30 17:04:04

标签: android actionscript-3 flex flashdevelop gestures

是否可以区分Flex Mobile中的水平滑动手势和水平滚动。 我有一个没有附加监听器的List(水平布局),以及一个附有GestureSwipe监听器的视图,当我尝试滚动列表时,滑动手势会被触发。 我试图在列表中添加一个手势事件监听器,并使用event.stopPropagation()调用一个函数,该函数会停止在视图中触发的手势,但由于列表占据了屏幕空间的85%,因此很难让视图事件发生火灾,这会使我想要做的事情失败。

有没有办法告诉两个动作,速度,持续时间或其他什么?

使用FlashDevelop和Flex SDK v4.14.1,Air 17.0,为Android构建

由于

2 个答案:

答案 0 :(得分:0)

好的,所以我无法找出如何区分这两个事件,但似乎有一个解决方法,而不是一个好的,但我想它可以工作,但我看到添加事件监听器的问题在列表滚动到最远点之后,您将需要另一个滚动/滑动操作来进行视图转换,而不是用户的良好体验。

list.scroller.viewport.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE,propertyChangeHandler );

protected function propertyChangeHandler(event:PropertyChangeEvent):void
{
    if (event.property == "horizontalScrollPosition" )
    {
        if (event.newValue == (event.currentTarget.measuredWidth - event.currentTarget.width )) {
                navigator.pushView(view.RightView);
        }
        if(event.newValue == 0){
                navigator.pushView(view.LeftView);
        }
    }
}

有没有人对这种做法有任何想法?

答案 1 :(得分:0)

我从未开发过Flex Mobile,但如果您可以覆盖jQuery hover()来获取活动,则可以区分水平滑动手势和水平滚动;