我想通过用手指拖动来重新排序 Flex 移动应用程序中的列表项。
作为第一步,我从 Adobe 文档中复制了示例Using drag-and-drop with list-based controls - 虽然他们的示例作为 Web 应用程序运行良好,但在下面的移动应用程序中没有任何反应:
为什么它不起作用(比如移动主题中缺少一些皮肤?)
有没有办法让它工作(至少重新排序移动列表中的项目)?
下面是我尝试过的简单测试代码 - 只需将其放入 Flash Builder 中的新空白(即没有导航栏)Flex 移动项目中:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
applicationDPI="160"
creationComplete="initApp()">
<s:layout>
<s:VerticalLayout/>
</s:layout>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
private function initApp():void {
srclist.dataProvider =
new ArrayCollection(['Reading', 'Television', 'Movies']);
destlist.dataProvider = new ArrayCollection([]);
}
]]>
</fx:Script>
<s:HGroup>
<s:VGroup>
<s:Label text="Available Activities"/>
<s:List id="srclist"
allowMultipleSelection="true"
dragEnabled="true"
dragMoveEnabled="true"/>
</s:VGroup>
<s:VGroup>
<s:Label text="Activities I Like"/>
<s:List id="destlist"
dropEnabled="true"/>
</s:VGroup>
</s:HGroup>
<s:Button id="b1"
label="Reset"
click="initApp();"/>
</s:Application>