- 遍历子容器,numElement或numChild 配合 getElementAt。
- UrlLoader负责下载,下载来的二进制数据;再由Loader负责解码,都可以异步进行。
- 九宫格的,比如button,如果美术给的图比较大,程序写样式皮肤的时候,需要预先把高宽设小点。不然button最小为美术画的大小,子少了不会缩到更小,字多了会扩大。
- mx|DataGrid的格子s|MXDataGridItemRenderer,如果未设置样式受s|List的s|ItemRenderer样式影响。他们的render的roll-over-color和selection-color样式只影响用到自定义renderer的,未定义renderer的受mx|DataGrid或者s|List分别的roll和selection color的设置。
- bmp.smoothing = true; bmp.bitmapData = null; BitMap的smoothing 在bitemapData置null后会自动设为false。
- 不想直接初始化的可视组件,先放到<fx:Declarations></fx:Declarations>中。
- 获取或遍历某个list的itemrenderer: list.dataGroup.getElementAt(i) as ItemRenderer
- 设置后没有及时更新的组件,调用drawNow() 或validateNow()
- list更新,删添改,如果是直接list.dataProvider = 新的dp,会整个更新scroll刷到顶。这样对用户不友好,应该保持原位。所以可以先保存scroll的位置,需要监听list的FlexEvent.UPDATE_COMPLETE完成后设置回去,但是还会刷一下。只要通过dataProvider 的接口 setItemAt 修改,removeItemAt删除,addItemAt 增加,就可以原位刷新了。
- list获得itemrenderer:c_list_mails.dataGroup.getElementAt(i)as ListItemRenderer
- c_list_mails.scroller.verticalScrollBar.changeValueByPage(true) 控制带滚动条的list翻页。
- A.dataProvider = B,如果B == A.dataProvider,则不会更新。
- [Bindable]的值必须在继承了EventDispatcher的类中。绑定了这个值的地方才能通过这个类发送修改的事件。
- 页游客户端保密
- 加密:未加密的loader加载加密了的主程序。
以下两种都可以在获得未加密的loader代码后,把解密代码直接拿来用,看不懂也没关系不用了解其算法。- 解密直接写在loader代码里。
- 解密代码用Alchemy编,置入loader代码中。类似混淆的效果让人看不懂。蓝港的火影世界就是采用这种。
但是效果一般,因为调用解密代码的 loader代码没有加密也没有混淆,所以可以知道解密函数在哪里。
一般可以自己写一个SWF加载 loader后,通过getDefinition,获得解密的类和函数,对加密的主程直接使用,不用看懂。
- 混淆 doswf(也有个工具生成的loader) alchemy混淆
- 加密:未加密的loader加载加密了的主程序。
- AS条件编译: http://www.xiaos8.com/article.asp?id=556 blog
CONFIG::debugging{ //执行调试代码。
}
CONFIG::debugging 后面定义类或函数
-define=CONFIG::debugging,true-define = namespace::variable_name,value
- 访问速度上Dictionary要快于Object(参考 Dictionary VS Object VS Array)
- ASDoc
- stage.stageHeight是可以看到的场景大小。
stage.height是所有添加到stage中物品如果完整呈现的大小。比如里面只有一个高100的Y也100的,stage.height会是200。 - getDefinitionByName等于ApplicationDomain.currentDomain.getDefinition。
- [Embed(source='/style/assets/Components.swf', symbol='选项按钮二5_')]
public static var TREE_SELECTED:Class;
有source只嵌入symbol指定的,去掉“source=”这个7个字符就是嵌入整个。 - SwiftSuspenders SwiftSuspenders 1.6 浅出深入 浅出[译] Basic metadata-based IOC solution for AS3
- 弱引用 http://www.xiaos8.com/article.asp?id=531
- for(var i:* in arr) arr是obj或 arr。i的类型可能为int或string,但是不允许声明为int,只能string或*。如果实际为int声明为string就会出错了,所以最好都声明成*。
- var file:File =File.applicationDirectory.resolvePath("musiclist.xml");
var filestem:FileStream=new FileStream();
filestem.open(file,FileMode.WRITE);
出错,因为File.applicationDirectory.resolve出来的只读,所以要var file:File =new File(File.applicationDirectory.resolvePath("musiclist.xml").nativePath); - c_tree_aiNodes.validateNow();//必须先这样才能展开树
c_tree_aiNodes.expandChildrenOf(c_tree_aiNodes.firstVisibleItem, true); - 闭包里 取 this 是globle,需要在上一层把this赋给一个变量,再在闭包里引用这个变量而不是this。
ASTIP
最新推荐文章于 2024-08-05 16:08:42 发布