hanyeah 专注于AS

tree组件拖动改变节点顺序

使用flex中的tree组件,想要添加“更改节点顺序”的功能,最先想到的就是直接拖动。上网搜索+查API+试验,终于实现了。

很简单,不需要自己写复杂的逻辑,只需要把dragEnabled、dropEnabled、dragMoveEnabled属性都设置成true就可以了。从属性名来理解,dragEnabled是拖动,dragMoveEnabled是拖动并移动,dropEnabled是释放。这里需要注意一下dropEnabled,在做List组件的拖动时发现,flex中应该是可以在组件之间拖动的,比如从一个List组件拖动到另一个List组件,tree应该也可以,所以要设置dropEnabled为true,接收拖放到该组件的item(item的来源可以是自己,也可以是其他组件)。

代码如下。

<mx:Tree id="projectTree" width="100%" height="100%" dataProvider="{ treeData }"
					 dragEnabled="true"
					 dropEnabled="true"
					 dragMoveEnabled="true"></mx:Tree>

如果是让我自己写代码实现拖动功能,一个星期都写不出来,而且flex中的数据绑定,缓动,切换效果都可以很方便的添加,布局也很强大。



2016年4月21日 | 发布:hanyeah | 分类:flex学习 | 评论:0

发表留言: