ActionScript3常见问题总结
1、如何在子影片剪辑里调用在父影片剪辑定义的函数?
在影片剪辑MC1里定义了函数test(),MC1中有一个影片剪辑MC2,如何在MC2里调用MC1的test()函数
使用this.parent["test"]()
2、为什么NetStream.bytesTotal获取不了值?
只有当NetStream.bytesLoaded的值大于0时,NetStream.bytesTotal的值才是视频文件的真实大小,否则,它的值是4G。
3、trace出stage对象的所有属性、方法和事件(均要求附带数据类型)
AS Code
var xml:XML = describeType(this.stage); trace('[Property]\n' + parse(xml.accessor, 'name', 'type')); trace('[Method]\n' + parse(xml.method, 'name', 'returnType')); trace('[Event]\n' + parse(getEventFormat(xml.metadata.(@name == 'Event')), 'eventName', 'eventType')); function getEventFormat ($list:XMLList):XMLList { for each (var i:XML in $list) { i.@eventName = i.arg.(@key == 'name').@value; i.@eventType = i.arg.(@key == 'type').@value; } return $list; } function parse ($list:XMLList, $name:String, $type:String):String { var str:String = ''; for each (var i:XML in $list) str += i.attribute($name) + ' : ' + i.attribute($type).match(/[^:.]+$/) + '\n'; return str; }
4、强制垃圾回收
AS Code
try { new LocalConnection.connect('foo'); new LocalConnection.connect('foo'); } catch (e:*) { }

Leave a Reply