【问题标题】:Actionscript 3 and Flex 4 scroll TileList with touchActionscript 3 和 Flex 4 通过触摸滚动 TileList
【发布时间】:2017-11-27 12:26:37
【问题描述】:

我遇到了 Adob​​e Flex 4 和 ActionScript 3 的问题。

我在 Flex 4 中有一个 TileList,如下所示:

<mx:TileList id="myList" change="test(event)" paddingLeft="28" width="1080" wordWrap="true" height="1420" rowHeight="475" columnWidth="350" dataProvider="{floorPlans}" itemRenderer="FloorplanItems" selectionColor="#ffffff" rollOverColor="#ffffff">

</mx:TileList>

我正在尝试让它通过触摸滚动,因为这是在触摸屏上进行的,我尝试了两种不同的方法来使它可以通过触摸滚动,一种将它包裹在 spark Scrollable 中,如下所示:

<s:Scroller>

    <s:Group> 

        <mx:TileList id="myList" change="test(event)" paddingLeft="28" width="1080" wordWrap="true" height="1420" rowHeight="475" columnWidth="350" dataProvider="{floorPlans}" itemRenderer="FloorplanItems" selectionColor="#ffffff" rollOverColor="#ffffff">

        </mx:TileList>

    </s:Group>

</s:Scroller>

但是当我在触摸屏上进行测试时,什么也没有发生。

另一种方法是添加一个 TransformGestureEvent.GESTURE_SWIPE 事件监听器,如下所示:

<mx:Script>
    <![CDATA[

            import flash.ui.Multitouch;  
            import flash.ui.MultitouchInputMode;  

            Multitouch.inputMode = MultitouchInputMode.GESTURE;

            import flash.events.Event;

            public function init(): void
            {
                trace("here");
                myList.addEventListener(TransformGestureEvent.GESTURE_SWIPE, onSwipe);
            }

            public function onSwipe (e:TransformGestureEvent):void{

                if (e.offsetY == 1) { 
                    //User swiped towards bottom
                    myList.y += 100; 
                }
                if (e.offsetY == -1) { 
                    //User swiped towards top
                    myList.y -= 100;
                } 

            }
    ]]>
</mx:Script>

但同样,这无济于事....我的想法不多了...如何使我的 TileList 可通过触摸滚动?

【问题讨论】:

  • 你能在在线模拟器中添加这个并提供链接吗?
  • 在线模拟器?
  • 像 jsfiddle、phpfiddle、sqlfiddle 之类的工作 sn-p
  • 您是否尝试将 minHeight 设置为 Scroller?
  • @SagarV 我从未听说过 asfiddle。我不认为有一个动作脚本存在。

标签: actionscript-3 flash apache-flex


【解决方案1】:

你应该使用interactionMode属性:

<mx:TileList interactionMode="touch"/>

可能的值是“触摸”或“鼠标”。 由于 Spark 组件较新且专为移动性能而设计,因此建议使用 &lt;s:List/&gt; 而不是 &lt;mx:TileList /&gt;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-22
    • 1970-01-01
    • 1970-01-01
    • 2017-11-28
    • 2011-01-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多