Apache flex 创建具有可拖动画布的平铺列表时出现问题

Apache flex 创建具有可拖动画布的平铺列表时出现问题,apache-flex,flex3,Apache Flex,Flex3,我想创建一个平铺列表,其中会有不同的画布或vbox等,我想让它们可以拖动 我编写了一个代码来实现这一点,但是输出没有显示列表中的任何内容 <mx:TileList width="1500" height="1000" dragMoveEnabled="true" selectable="true" selectionColor="#FFFFFF" dragEnabled="true" dropEnabled="true"

我想创建一个平铺列表,其中会有不同的画布或vbox等,我想让它们可以拖动

我编写了一个代码来实现这一点,但是输出没有显示列表中的任何内容

<mx:TileList width="1500" height="1000" dragMoveEnabled="true" 
                selectable="true" selectionColor="#FFFFFF"
                dragEnabled="true" dropEnabled="true" 
                 columnCount="1" rowHeight="160">
        <mx:dataProvider>
            <mx:Array>
                <mx:Canvas width="1450" height="100">
                    <mx:Button label="Testin the buttong"/>
                </mx:Canvas>
                <mx:Canvas width="1450" height="100">
                    <mx:Button label="Testin"/>
                </mx:Canvas>
            </mx:Array>
        </mx:dataProvider>
    </mx:TileList>

我怎样才能解决这个问题?或者让我知道我做错了什么

谢谢和问候
Zeeshan

您的数据提供程序应该具有某种类型的对象。理论上,它们可以是画布的实例,但使用可视化组件作为数据提供者是非常不寻常的。您要做的是阅读ItemRenders。itemRenderer是一个组件,用于呈现数据提供程序的每个实例

试着这样做:

<mx:script><[[
 public var mydb : Array = [
   {label: 'Testin the buttong'},
   {label: 'Testin'}

  ]
]]></mx:script>

<mx:TileList width="1500" height="1000" dragMoveEnabled="true" 
                selectable="true" selectionColor="#FFFFFF"
                dragEnabled="true" dropEnabled="true" 
                 columnCount="1" rowHeight="160" dataProvider="{mydp}">
        <mx:itemRenderer>
         <mx:Component>
                <mx:Canvas width="1450" height="100">
                    <mx:Button label="{data.label}"/>
                </mx:Canvas>
         </mx:Component>
        </mx:itemRenderer>
    </mx:TileList>

简言之,我使用通用对象在脚本中定义了dataProvider。我在线定义了一个itemRenderer。像这样的东西至少应该有东西出现

我不确定画布是否可以拖动,因为它通常没有任何东西可以点击开始拖动。你可能想考虑一个标题窗口。


我在浏览器中编写了代码,因此标准免责声明适用

这是我不想要的,我有不同的画布在侧面的瓷砖,每一块画布都有不同的东西在里面。无法在此处使用数据提供程序。任何其他解决方案。您可以创建显示不同项目的项目渲染器。在Spark控件中,您甚至可以使用ItemRenderFunction根据[某些条件]使用不同的ItemRenderer。