Tree 相关的文章

Flash平台开发者技能树

转载一个好东西..
不少人不知道如何入门flash..
不少人觉得flash没什么学..
不少人觉得自己不知道学什么..

那么..来看看这个,
也许之前的迷惑将消失..
也许你将找到你的新方向,新动力..

Flash平台开发者技能树
http://swfever.com/wp-content/special/Flash_Platform_Developer_Skill_Tree.html
转自:http://swfever.com/?p=871
分类: FLASH , 标签: , , , ,

自定义Tree组件图标(ICON)

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#FFFFFF, #FFFFFF]" width="270" height="420">
	<mx:Script>
		<![CDATA[
			[Embed(source="gif/ico_zp.gif")]
			[Bindable]
			public var ico_zp:Class;
			
			[Embed(source="gif/ico_rj.gif")]
			[Bindable]
			public var ico_rj:Class;
			
			[Embed(source="gif/ico_dtyx1.gif")]
			[Bindable]
			public var ico_dtyx1:Class;
			
			[Embed(source="gif/ico_test.gif")]
			[Bindable]
			public var ico_test:Class;
			
			[Embed(source="gif/icon_tx.gif")]
			[Bindable]
			public var icon_tx:Class;
			
			[Embed(source="gif/ico_park.gif")]
			[Bindable]
			public var ico_park:Class;
			
			[Embed(source="gif/ico_mm.gif")]
			[Bindable]
			public var ico_mm:Class;
			
			[Embed(source="gif/icon_yr.gif")]
			[Bindable]
			public var icon_yr:Class;
		
			[Embed(source="gif/ico_lw_bg.gif")]
			[Bindable]
			public var ico_lw_bg:Class;
			
			[Embed(source="gif/ico_city.gif")]
			[Bindable]
			public var ico_city:Class;
			
			[Embed(source="gif/ico_cg.gif")]
			[Bindable]
			public var ico_cg:Class;
			
			[Embed(source="gif/ico_music_bg.gif")]
			[Bindable]
			public var ico_music_bg:Class;
			
			[Embed(source="gif/icon_28.gif")]
			[Bindable]
			public var icon_28:Class;
		
			[Bindable]
			private var _data:XML = <data>
						<item name="照片" ico="ico_zp"/>
						<item name="日记" ico="ico_rj">
							<item name="礼物" ico="ico_lw_bg"/>
							<item name="足迹" ico="ico_city"/>
							<item name="模拟炒股" ico="ico_cg"/>
							<item name="音乐" ico="ico_music_bg"/>
							<item name="答题" ico="icon_28"/>
						</item>
						<item name="动他一下" ico="ico_dtyx1"/>
						<item name="测试" ico="ico_test"/>
						<item name="知我多少" ico="icon_tx"/>
						<item name="争车位" ico="ico_park"/>
						<item name="朋友买卖" ico="ico_mm"/>
						<item name="咬人" ico="icon_yr"/>
					</data>
		]]>
	</mx:Script>
	<mx:Tree x="10" y="10" width="250" height="400" labelField="@name" folderClosedIcon="{ico_rj}" folderOpenIcon="{ico_rj}" iconField="@ico" dataProvider="{_data.item}"></mx:Tree>
</mx:Application>

上面用的是最基本最简单的方法..也是最笨的方法..因为用到哪个ico先把ico给定义成一个class(会打包到swf中),然后能过xml的ico属性指定到iconField,达到最终的效果..

如果对于icon未知或者较多的时候..
我们可以先用loader把ico加载进来...(可以一个一个加载,,或者把ico预先打包到一个swf中..然后用反射的方法来获取相应的class对象)
然后再通过iconFunction跟据属性返回..

前两种方式都是用的Tree原有的属性..这个方法不好的地方是他只支持传输class对象..这样必须先预加载所需要的ico..

如果希望直接指定ico地址..我们可以自定义itemRenderer..然后把ico用一个image或loader代替..
分类: FLEX , 标签: , ,