【发布时间】:2017-11-27 12:26:37
【问题描述】:
我遇到了 Adobe 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