as3的with用法很cool

先看看用法

var child:DisplayObject = getChildThatMightBeMovieClip();   
if (child is MovieClip){  
      with (child as MovieClip)      {  
            trace(numChildren);  
            trace(currentFrame);  
       }  
}    

再来一个,画mask层的

        private function resizeHandler(e : Event) : void { 
            with(graphics) { 
                clear(); 
                beginFill(0, 0.5); 
                drawRect(0, 0, stage.stageWidth, stage.stageHeight); 
                endFill(); 
            } 
        } 

        public function test() { 
                    //没有这两句下面resize事件就没用了  
            stage.scaleMode = StageScaleMode.NO_SCALE; 
            stage.align = StageAlign.TOP_LEFT; 

            var t1 : TextField = new TextField(); 
            t1.text = "好大的字"; 
            t1.x = 100; 
            t1.y = 300; 

            addChild(t1); 
            stage.addEventListener(Event.RESIZE, resizeHandler); 
}

是不是很cool~~
http://blog.csdn.net/zhizaibide1987/article/details/8914509

Haxe source format (haxe代码格式化)

haxe IDE 编辑器工具

  1. FlashDevelop 本身自带的格式化对Haxe无效
  2. SublimeText+ Bundle对 Haxe也不算完美,AutoIndent也不好使
  3. FDT 也不能格式化,远不如他对AS3的支持

目前可以使用Astyle + Ultraedit来好好格式化一下

  1. Astyle 下载
  2. Ultraedt对Haxe的语法高亮,下载,放置目录:Advanced -> setting -> Synax hightlight 找那个目录
  3. 在ultraedit工具配置:

    C:\soft\UltraEdit\GNU\astyle.exe –style=java “%f”


参考:UE edit/UE STUDIO如何格式化代码.
1.ultraedit修改快键>>>

advanced->Configuration->Key Mapping  
在Commands框里面选择SearchFindInFiles,   
点击Press New Key输入框,敲入自定义的组合键  
点上面的Assign按钮,就ok了  

开始玩GitHub了

1.TortoiseGit比官方的要好用,因为用他的SVN管理嘛
从这里开始配置
http://blog.csdn.net/jarelzhou/article/details/8256169

还有密钥: http://rongjih.blog.163.com/blog/static/335744612010619111042465/

getChildByName 与[]获取实例对比

AS3中的getChildByName 和 []

AS3中的getChildByName[]好像没有太大的区别 ,但实际上还是说法的:,困扰我很久的问题

为什么有时可以用[“nameX”],但有时又不行,反而会报错呢????

“`php

for (var i : int = 0; i < num; i++) {
var sp : Sprite = new Sprite();
sp.name = “name” + i;
addChild(sp);
}
// var test : DisplayObject = getChildByName(“name90000”);
//正确的输出


// var test:DisplayObject = this[“name90000”] ;
//会报错Exception fault: ReferenceError: Error #1069: 在 Main 上找不到属性 name90000,且没有默认值

“`

但这只是对这一个没有as而言,但如果对一个Main.fla而言,对应的Main文件,如果fla有实例名name90000 按理说和addchild没有区别,但实际上还是有差别的

“`php

对在fla的定义实例名的名:
直接可以用 hasOwnProperty 来判断他是不是存在
如果存在,直接可以用[“name90000”]来判断

原因就是用fla里面的代码已经是个一个类了,他里面的显示对象,有名字的都是他的成员变量

“`

从上面可以这么理解:

对于从flash中发布的命名的对象,发布时已经成为类的成员变量了,从定义中就可以知道
而对于addChild而言,则不是成员变量了

得到这个类中所有的成员变量,对于flash编辑器中发布的适用

var obj:Object = new Object();
for(var key:Object in obj){
trace(key);
}

FDT的破解

说实在的不道德啊
人家也是程序员,也要卖license养家啊,破解不是个好办法
为了用到FDT能编译成Scout,不得不升级:http://fdt.powerflasher.com/2012/12/how-to-install-asc-2-0-in-fdt/

原文在(http://bbs.9ria.com/thread-187812-1-1.html “这里”)

首先感谢 superares azbot 两位老师提供的文件和方法, 附件是我做的1.31.160.1599版本的破解文件, key都在压缩包内.  
制作方法很简单, 一个16进制编辑器搞定.  
1, 用16进制编辑器打开fdtuijar文件, 推荐用Hxd这个小软件.  
2, 将光标定位到第4个字节(也就是第8个字母或数字后面)  
3, 在搜索菜单选择跳转,选16进制方式,然后输入光标前面的8个字母数字点确定  
4, 光标会定位到你要跳转的地方(如果没错的话, 标后面的数字是50),然后将光标前面的全部删除,  
5, 将我提供的fdtui_key.jar文件用16进制编辑器打开,复制全部再粘贴到你的fdtui.jar文件最开始处,保存,大功告成.

as3备忘-apply方法:

apply(Function.apply 方法)

与 Function.call()(它将参数指定为用逗号分隔的列表)不同,该方法将参数指定为一个 Array 对象。如果在脚本实际执行前,无法知道要传递的参数的数量,那么这种方法通常很有用。
返回被调用函数指定为返回值的值。

  
  Math.atan2(1, 0)   
   Math.atan2.apply(null, [1, 0])下面的示例演示 apply() 如何传递参数数组:  
  
  function theFunction() {   
  trace(arguments);   
  }   

更多搜手册apply

目前使用下来最完美的翻墙方案(已使用1年+)

电脑PC端

使用Chrome,IE或者firefox目前没试过
XX门+Chrome+SwitchSharp
使用办法
1.开机开着XX门,同时使用我的配置,他就不会骚扰IE的配置了,安静的呆在角落里
2.下载我提供的SwitchSharp配置,就可以安全无痛的上google,同时国内网站又正常访问
3.网速视自由门的速度来决定 ,一般上google还是能应付的,如果想下载就算了吧,自备VPN
4.下载包里包含所需要的文件

Android

不二选择Fqrouter,这个要自己去找,配合下载youtube利器TubeMate,很是不错

对象覆盖,像这种settimeout ,注释的会是最后一个对象

  var queue : Array = [];
  queue.push($view.seniorScout.getScoutData);
  queue.push($view.eliteTournament.getMyInfo);
  queue.push($view.shoot.refreshShootTimes);
  queue.push($view.club.refreshSlaveStatus);
  for (var i : int = 0 ;  i < queue.length ;i++) {
      setTimeout(exeActiveRequest, (i + 1) * 1000, queue[i]) ;
  }
  // for each (var f:Function in queue) {
  // var f1 : Function = f ;
  // setTimeout(function() : void {
  // f1.apply(null);
  // }, (i++) * 2000);
  // }

Adobe flasCC与Scout

1.flash CC (原名:Alchemy) 把c++编成swf的工具,据说效率高,但现在用来做加密用,据说反编译出来看不出原型 现在名字叫这个CrossBridge ,链接在这里 例子 >>>

第三方的 >>>>

2.Scout Adobe出的性能检测工具,安装必须64位系统 看图表要看这个教程,在这里>>

对已经有项目用telemetry-utils 工具来加入scout代码, 在这里>>>>

介绍的文章有: >>>>