常用技巧简述汇总
时间:2008-07-09
来源:互联网
其中会包含大家的宝贵评论以及生平所讲,也会有我的见解在里头。希望大家支持。
另外对于本帖有意见都可以跟帖提出,我也希望听听大家的看法。
B布局
如何避免矢量图模糊
代码:
规则图形使用整数的坐标和宽度,并不要使用中心坐标。根据类名得到相应的实例 , 模拟as2的attachMovie
代码:
protected function attachMc(className : String):Sprite{
var mc: Class = getDefinitionByName(className) as Class;
return new mc() as Sprite;;
}
防止后臺數據被緩存
代码:
在訪問的頁面后加上隨機參數urlloader.load ( new URLRequest ( "http://localhost/service.php?random"+Math.random() ) );
代码:
使用URLStream 并使用readMultiByte 讀取數據任何位置的跨场景影片控制:
代码:
MovieClip ( root ).gotoAndPlay ( 帧书 , "场景" );点评:在主影片从MovieClip集成的情况下,root为MainTimeline类型,其实也是一个MovieClip
安装AIR for Flash CS3 扩展
代码:
官方声明air extension b2只能支持英文版本ReleaseOutSide的实现方式
代码:
方法1对目标mc做如下处理
mc.addEventListener ( MouseEvent.MOUSE_DOWN , 添加stage的监听 );
并对stage.addEventListener ( MouseEvent.MOUSE_UP , 移除stage监听 );
mc.addEventListener ( MouseEvent.MOUSE_UP , 移除stage的监听 );
方法2
创建临时层用于遮挡鼠标事件,并侦听这个临时层的MouseEvent.MOUSE_UP事件用于适时的移除临时层。
同时侦听stage的Event.RESIZE事件用于重绘临时层的大小。
秒转为时分秒格式
代码:
function secToTime ( secs:int ):String {var h:int = Math.floor ( secs / 3600);
var m:int = Math.floor ( ( secs - h * 3600 ) / 60 );
var s:int = secs - h * 3600 - m * 60;
return h + " : " + m + " : " + s;
}
获得指定范围随机数
代码:
function random ( range:Number ):Number {return Math.random() * range;
}
跨域加载图片
代码:
var pic_loader_context = new LoaderContext(true);pic_loader.load(pic_urlr,pic_loader_context);
代码:
多个swf库被载入。那么取出元素所需要的applicationDomain也就是各个swf所在的loaderInfo.applicationDomain这样的情况,在调用applicationDomain.getDefinition获取类标识之前,先确定好applicationDomain是否是所
需的那一个每个swf的applicationDomain默认都是不同的。所以可以存储这些swf以备使用。
在文本缩小的时候字不会消失的办法
代码:
使用BitmapData,以new BitmapData ( width , height , true , 0x00FFFFFF )方式构造,然后draw方法绘制出文字,可保持文本背景透明的同时,达到完美缩放效果。
我建议打开Bitmap的smoothing属性。
代码:
public function getPosition ( txt:TextField ):Point {var currentIndex:int = txt.caretIndex;
var rect:Rectangle = txt.getCharBoundaries(currentIndex);
if ( rect==null ) return null;
else return new Point (rect.x,rect.y);
}
代码:
TextArea有protected屬性textField可在繼承之后使用,并在內部擴展行為。
Flex結合FlashCS3項目中需要注意的問題
代码:
一些組件只能在FLASH中編譯,而定義在Flex中找不到。解決辦法在Flex不要使用只有FLASH能識別的類定義。
可以考慮向上轉型 并使用對象["屬性"]的方式賦值
可以避免類定義在Flex中存在時的編譯錯誤。
代码:
降低程序耦合度單元,或者稱之為模塊之間,使用事件關聯,
組合關系不宜嵌套過深。可以避免編譯進來許多用不到的類使編譯時間成倍增長,
并會彈出不是錯誤的編譯時錯誤。這句話大概得在項目中理解了。
代码:
不要在这样的情况下使用startDrag再根据拖动元素坐标计算的方法。而使用stage一级的MouseEvent.MOUSE_MOVE否则无法保证联动元素之间因赋值顺序发生的错位。
关于Fla中的As3代码书写注意事项
代码:
使用舞台实例,需确保在当前帧可访问,这个加入一个if判断就能够做到。代码:
时间轴上的 play (); stop (); gotoAndPlay () 等,没有任何改变,和以前一样的用访问主场景使用 MovieClip ( root )
代码:
结合文档类使用,出现对于stage一级引用,推荐使用推迟初始化时间,采用在构造函数中侦听Event.ADDED_TO_STAGE
并开始执行初始化内容
代码:
当文档类中需要使用舞台变量,同样加上if判断来保险代码:
Linkage的元件链接中的Class,可以忽略其实际类存在的警告,当作一个标识名使用。代码:
fla的类都是Runtime binding代码:
判断影片或者效果播放在哪可以在帧上分派事件出来代码:
纯透明度变化的动画效果。可以少使用时间轴制作,而使用类似TweenLite一类的缓冲工具制作。可减少出现null exception的几率代码:
需要使用到文档类的时候。可以多把效果的代码写在fla中而把业务逻辑写在文档类中。代码:
gotoAndPlay 一类属于异步操作,不要认为执行了gotoAndPlay之后那一帧上的实例就马上可以访问到并使用。代码:
Linkage类中的基本类型,如需扩展,推荐从Sprite中扩展代码:
不要在从Sprite型得到继承的位置使用帧上代码,例如Sprite型文档类,或者Sprite型的Linkage的帧上如果加入代码就会提示addFrameScript错误,因为这个是属于Sprite子类MovieClip的隐藏方法。
代码:
as2以及as3 的swf通讯可以使用LocalConnection非常好用,记得在LocalConnection别忘记用try catch基于SharedObject的通讯也是可以考虑使用的。
代码:
Event.RESIZE时间并不是任何显示对象都可用,推荐只对stage使用此事件侦听并做统一的大小重设调度代码:
对于元件大小因为不可见元素的计算导致并非实际所见大小可以考虑使用linkage继承并覆盖其get width get height 属性选择器代码:
元件的on ( rollover ) {} 或者 instance.onRollOver = function () {}可以使用
instance.addEventListener ( MouseEvent.ROLL_OVER , rolloverHandler );
function rollHandler ( event:Event ):void {}
来替代
應用程序常用圖標匯總
代码:
http://www.famfamfam.com/archive/silk-icon-set-released/代码:

代码:

代码:

代码:


配合Adobe界面所使用的设计
代码:

代码:

作者: enc0717 发布时间: 2008-07-09
非常欢迎在回复中留言,我代表大家向您表示衷心的感谢。

同时也希望大家一起完善,发现问题可以提出来,大家一起讨论。
[ 本帖最后由 enc0717 于 2008-7-9 17:22 编辑 ]
作者: enc0717 发布时间: 2008-07-09

作者: viqqw 发布时间: 2008-07-13
如果不能简述的问题。不会归到这里,这个贴概念性问题居多。
作者: enc0717 发布时间: 2008-07-14
作者: HBrO 发布时间: 2008-07-22
代码:
/* 根据类名得到相应的实例 , 模拟as2的attachMovie*/protected function attachMc(className : String):Sprite
{
var mc: Class = getDefinitionByName(className) as Class;
return new mc() as Sprite;;
}
作者: xxwei 发布时间: 2008-07-28
作者: enc0717 发布时间: 2008-07-30
var min = 5;
var max = 30;
addEventListener(Event.ENTER_FRAME, frame);
function frame($e:Event):void {
var a = int(Math.random() * (max - min) + min);
trace(a);
}
作者: lkele 发布时间: 2008-08-06
作者: vexyu 发布时间: 2008-08-07
作者: linchenrr 发布时间: 2008-08-14
作者: ibio 发布时间: 2008-08-20

作者: lanxuehai 发布时间: 2008-08-20

作者: 136644986 发布时间: 2008-08-20
http://www.kirupa.com/forum/showthread.php?t=223798
这里太多的技巧和教程了~我也懒得一个个粘了,想看的自己进去看吧~
作者: feixing1 发布时间: 2008-08-21
作者: dlchy 发布时间: 2008-08-29

作者: muyuyu 发布时间: 2008-10-20
作者: enc0717 发布时间: 2008-10-27

作者: 4417811984 发布时间: 2008-11-21
作者: dqgwm 发布时间: 2008-12-07






作者: liubin203 发布时间: 2009-02-03
作者: peidaping 发布时间: 2009-03-03
作者: arthur721 发布时间: 2009-03-03
作者: bobl 发布时间: 2009-03-04
bin-debug里的swf直接运行就得,干嘛用Flashcs4开?
是Flex工程文件。
作者: enc0717 发布时间: 2009-03-04
作者: sifang 发布时间: 2009-03-10
作者: bohr 发布时间: 2009-03-12
不过别忘记就行了。
作者: enc0717 发布时间: 2009-03-13
作者: piggygo 发布时间: 2009-04-01

作者: Jackic 发布时间: 2009-04-07
作者: bingdianfangsha 发布时间: 2009-04-14
作者: Study2008 发布时间: 2009-04-15
作者: kinglvfen 发布时间: 2009-05-12

作者: lanbinmylove 发布时间: 2009-05-22
作者: zzxstr 发布时间: 2009-05-22
作者: 7233097 发布时间: 2009-07-29
作者: flashswf 发布时间: 2009-08-04
作者: yuzfeng 发布时间: 2009-08-12

作者: jillcyw 发布时间: 2009-08-27
作者: wuyar 发布时间: 2009-09-16
作者: 013strife 发布时间: 2009-09-21
作者: guipeihong 发布时间: 2009-10-28
作者: tuku0801 发布时间: 2009-11-03

作者: geome 发布时间: 2009-11-27
谢谢啊
作者: xiaoya200600 发布时间: 2009-12-17
作者: 103298965 发布时间: 2010-01-11
作者: book8 发布时间: 2010-01-14
作者: tanActionScript 发布时间: 2010-01-16

作者: Finnan 发布时间: 2010-02-02
作者: abxiechengjun 发布时间: 2010-02-23
作者: asd333777999 发布时间: 2010-03-11
作者: 98xp 发布时间: 2010-03-20
感谢收集,数学:获得指定范围随机数 这个是我想要的
作者: iCrush 发布时间: 2010-04-26
作者: cjyyj 发布时间: 2010-05-01
作者: kess 发布时间: 2010-06-18
作者: tfhaitao 发布时间: 2010-06-26

作者: stacke 发布时间: 2010-07-26
作者: stacke 发布时间: 2010-07-26
作者: xinrencainiao 发布时间: 2010-08-22
作者: shirne 发布时间: 2010-08-30
作者: furuier 发布时间: 2010-09-01
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28