写 treeItemrenderer 还是有点儿难度的

阅读更多

有一个国外的哥们儿早己经在flex cookbook里提到了这个问题: http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=7764

 

写itemrenderer时要注意:

1 最好不要自己写treeItemRenderer,因为你还要想办法把图标加上。

2 自己想在itemRenderer里加东西,最好在createChildren()方法里干,这不是在mxml里写东西,别以为new了就OK了,要自己设高度,如果你干过类似的这种活儿,相信你一定清楚。

3 createChildren()调用之前还没set data

4 在updateDisplayList()注意整理你加上的东西的布局。

5 TreeItemRenderer默认加了个label上去,label是不能换行的,它自动会用....代替不能显示的东西。

6 label的高、宽、x、y都己经算的很好了,你可以在createChildren()的时候让label不可见(不能删了它,在ItemRenderer中多次使它,删了只会为自己带来麻烦。)你自己的东西只要照搬label的x、y等参数就好了。

7 整个Text上去? 太麻烦了,上边提到的那个外国哥们儿也被搞二了,我也是。 一定要注意它的高度,不然tree会被你搞糊涂,为什么?我也没搞确切,大概是因为:因为它认为所有的itenrenderer都一样高,也可能是因为itenrenderer复用。

你可能感兴趣的:(Flex,Adobe)