亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 辦公 > Flash > 正文

Flash AS3教程:疑難雜癥匯總

2020-07-17 13:18:57
字體:
來源:轉載
供稿:網友
前面學習了Flash AS3教程:ImageLoader類,但是有時我們在做項目時可能會遇到這樣或那樣的問題,這篇里給大家專門提供些解決辦法。
在做項目的時候,總會碰到很多,奇奇怪怪的問題,看了這篇文章相信會有些幫助,雖然不是很全面,但只要是我碰到過的問題,就分享給大家!但是也怕有些想不起了。。盡力額、、

==================== 氣 死 你 的 分 割 線 ====================

1、數組的排序問題:Array.sort()方法
大家都經常用排序,一般都是字符串排序什么的,都不會發現什么的,現在來看一個有趣的現象

CODE:
var a:Array = [7,3,32,64,96,13,42];
a.sort();
trace(a);
//輸出:13,3,32,42,64,7,96
奇怪了,為什么排序出來的東西是個這樣的。。
分析為什么:仔細看一下,會發現每個數字的第一個數字,的確是按排序放好的:1,3,3,4,6,7,9
為什么會這樣呢?仔細來看看Array的官方文檔

QUOTE:

默認情況下,Array。sort() 按以下方式進行排序:
1、排序區分大小寫(Z 優先于 a)。
2、按升序排序(a 優先于 b)。
3、修改該數組以反映排序順序;在排序后的數組中不按任何特定順序連續放置具有相同排序字段的多個元素。
4、元素無論屬于何種數據類型,都作為字符串進行排序,所以 100 在 99 之前,這是因為 "1" 的字符串值小于 "9" 的字符串值。
不難發現,第4條說明了,默認是以字符串進行排序,而不是以字符串排序,難怪會出現這樣的結果額
那么應該如何排序才會出現我們要的答案呢?

CODE:
var a:Array = [7,3,32,64,96,13,42];
a.sort(Array.NUMERIC);
trace(a);
//輸出:3,7,13,32,42,64,96
加的這個參數是什么東西額。。仔細看看幫助文檔吧。。
然后Array提供了幾個常量分別是:

QUOTE:

CASEINSENSITIVE : uint = 1 [static] 指定 Array 類排序方法為不區分大小寫的排序。
DESCENDING : uint = 2 [static] 指定 Array 類排序方法為降序排序。
NUMERIC : uint = 16 [static] 指定 Array 類排序方法為數值(而不是字符串)排序。
RETURNINDEXEDARRAY : uint = 8 [static] 指定排序返回的數組包含數組索引。
UNIQUESORT : uint = 4 [static] 指定 Array 類排序方法的唯一排序要求。
==================== 氣 死 你 的 分 割 線 ====================

2、Loader.load加載圖片,顯示不出來
這個問題可以一筆帶過額。。很多人都碰到過,其實是因為你沒有加checkPolicyFile
如果確定圖片跨域了,那么加載圖片的時候,應該這樣寫

CODE:
var loader:Loader = new Loader;
var request:URLRequest= new URLRequest(url);
var lc:LoaderContext = new LoaderContext(true);
loader.load(request, lc):
加的這個new LoaderContext(true),可以去參考官方幫助文檔
這個構造函數可以傳三個參數
第一參數:指定是否去加載跨域文件
第二參數:指定要使用的應用程序域
第三參數:指定要使用的安全沙箱

==================== 氣 死 你 的 分 割 線 ====================

3、flash嵌入代碼
經常出問題,比如打開窗口會被阻止,flash游戲做方向鍵的,屏幕會跟著動等類似問題
我也經常碰到這樣的問題,花時間研究了一下
注意第一個,嵌入代碼中有一個使flash透明的參數,不要把它設置成透明,那么很多問題都可以解決,不信的話,大家可以試試,還有很多不常用的屬性,有些可以阻止flash某些方法的使用,很煩人的,特別是某些博客,公開平臺等,傳flash之后,他在嵌入代碼中會加一些這樣的屬性,那么flash有很多事情都不能做
另外還有一個就是,如果是從flash中彈出新窗口,設置成不透明也會被阻止,但是在當前窗口打開,就不會
這是我在做項目的時候,碰到的問題,以及我的解決方法,如果有高人有更好的辦法,一定要告訴我額。。。

==================== 氣 死 你 的 分 割 線 ====================

4、mask遮罩層
mask這個屬性相信很多人看過幫助文檔之后,不會仔細去看,特別是熟悉AS2的setMask的人
當然包括我自己也放過這樣的錯誤,因此在此提起,希望各位新手在學習的時候,把幫助文檔看清楚

QUOTE:

mask 屬性
mask:DisplayObject[read-write]
語言版本 :ActionScript 3.0
Player 版本 :Flash Player 9
調用顯示對象被指定的 mask 對象遮罩。 要確保當舞臺縮放時蒙版仍然有效,mask 顯示對象必須處于顯示列表的活動部分。 但不繪制 mask 對象本身。 將 mask 設置為 null 可刪除蒙版。
要能夠縮放遮罩對象,它必須在顯示列表中。 要能夠拖動蒙版 Sprite 對象(通過調用其 startDrag() 方法),它必須在顯示列表中。 要為基于 sprite 正在調度的 mouseDown 事件調用 startDrag() 方法,請將 sprite 的 buttonMode 屬性設置為 true。
根據幫助文檔的說法,如果要縮放遮罩層,就必須把遮罩層放在相應的顯示列表中,也就是addChild(mask)
比如:我現在使用的是
stage.scaleMode = StageScaleMode.SHOW_ALL;
如果說你的遮罩層沒有addChild那么,在縮放窗口的時候,mask是不會改變寬高;反之加入了顯示列表,就會跟著窗口一起縮放
mask的拖拽和點擊等事件也是如此!
綜上所述:設置遮罩層最佳做法是放到顯示列表,當然不排除有特別作用的

另外,你把mask的屬性清空,本來被做為遮罩層的,就可以看的到了,否則是看不到遮罩層的

==================== 氣 死 你 的 分 割 線 ====================

5、莫名其妙的mc
你使用Loader加載進來的mc,如果里面是動畫,或者帶有聲音
你加載進來,就算你不addChild,他也在播放的,而且有時候你控制他stop,還控制不了。。
解決方案是:加stop(),做動畫素材的時候,盡量把關鍵動畫都做在主場景幀上,那么程序中就可以控制動畫了
置于聲音,還真是個頭疼的東西,當然使用mc的同樣管理方案也是可以的,但是我建議,把聲音做到庫中
然后使用ClassLoader把聲音拿下來,然后用程序控制聲音。

==================== 氣 死 你 的 分 割 線 ====================

6、幽靈般的容器
一個容器,當被addChild后,你就可以直觀的看得到他,但是你又removeChild,很多人都認為這樣,容器就不存在了,實則不然,他還存在
比如你做一個飛機游戲,飛機爆炸后,你就會removeChild它,但是這樣做是不夠的,他依然還存在那個位置,而且x,y值是依然不變的
如果飛機上還寫了碰撞檢測,如果這時候有子彈飛過來,依然會算碰撞成功,還有很多類似的例子
個人建議:兩個辦法,簡單的游戲嘛,可以設個全局邏輯值,當確定不需要在碰撞檢測,把這個值變成false,每次檢測碰撞,也檢查一下這個值,就行了
第二個辦法是復雜一點的,擴展容器類,偵聽他的removedFromStage,removed事件和addedToStage,added事件,如果加入了,則容器中某個值等于true,反之是false
這個屬性就可以叫返回是否被加入顯示對象
當然還有其他的辦法,比如檢查容器的contains方法,可以檢查出當前容器中是否含有容器,如果removeChild,那么你檢查結果就是不存在

==================== 氣 死 你 的 分 割 線 ====================

oh。。先寫這么多,肯定不是很完全。。一下子我也沒辦法把我在項目中碰到的任何問題搬出來。。想起來,我在繼續寫。。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美国产日本在线| 久久深夜福利免费观看| 欧美精品videofree1080p| 国产精品96久久久久久| 欧美日韩在线观看视频小说| 亚洲激情在线观看| 欧美国产中文字幕| 亚洲毛茸茸少妇高潮呻吟| 乱亲女秽乱长久久久| 97av视频在线| 国产主播在线一区| 久久精品一本久久99精品| 精品人伦一区二区三区蜜桃网站| 欧美成人黑人xx视频免费观看| 欧美亚洲日本黄色| 日韩中文字幕视频在线| 欧美一级免费看| 日韩电影在线观看中文字幕| 91理论片午午论夜理片久久| 插插插亚洲综合网| 久久99亚洲精品| 久久久久久国产精品久久| 欧美极品少妇xxxxx| 欧美亚洲视频在线观看| 美乳少妇欧美精品| 色久欧美在线视频观看| 日本一区二区不卡| 蜜臀久久99精品久久久久久宅男| 日本精品性网站在线观看| 97在线看免费观看视频在线观看| 成人妇女免费播放久久久| 97精品一区二区视频在线观看| 国产日韩在线看片| 亚洲欧美另类国产| 久久久999精品| 91久久精品国产91久久| 26uuu另类亚洲欧美日本一| 国产成人av网| 亚洲午夜精品久久久久久性色| 九色精品免费永久在线| 中文字幕日韩av| 九九热这里只有精品6| 福利精品视频在线| 国产成人精品在线观看| 欧美日韩亚洲一区二区| 亚洲第一福利网站| 欧美一区二区大胆人体摄影专业网站| 午夜精品福利在线观看| 日韩成人中文字幕在线观看| 亚洲激情电影中文字幕| 8090理伦午夜在线电影| 这里只有精品在线播放| 日本高清久久天堂| 亚洲黄色有码视频| 青青草原成人在线视频| 韩曰欧美视频免费观看| 亚洲精品福利在线| 欧美成人精品在线视频| 欧美精品激情blacked18| 久久精品久久久久久国产 免费| 在线观看久久久久久| 国产91色在线播放| 久久综合五月天| 欧美国产日韩一区二区三区| 久久伊人91精品综合网站| 成人xvideos免费视频| 国产欧美精品久久久| 亚洲综合一区二区不卡| 欧美激情欧美激情| 久久精品国产99国产精品澳门| 成人久久精品视频| 欧美亚洲另类制服自拍| 国产日韩欧美电影在线观看| 国产精品视频男人的天堂| 日韩视频永久免费观看| 成人激情视频在线观看| 久久久久www| 国产三级精品网站| 久久久精品电影| 国产精品日韩在线观看| 岛国av在线不卡| 亚洲色在线视频| 欧美另类暴力丝袜| 欧美激情精品久久久久久蜜臀| 欧美亚洲成人xxx| 日韩欧美视频一区二区三区| 国语自产精品视频在免费| 久久久黄色av| 国内精品久久久| 成人免费淫片aa视频免费| 91精品在线播放| 亚洲第一精品福利| 日韩a**中文字幕| 97在线视频免费| 美女久久久久久久久久久| 日韩日本欧美亚洲| 亚洲成人网在线| 国产精品久久99久久| 亚洲变态欧美另类捆绑| 国产精品久久国产精品99gif| 亚洲人线精品午夜| 久久亚洲精品成人| 欧美激情视频播放| 在线视频日韩精品| 日韩第一页在线| 国产日本欧美视频| 亚洲天堂日韩电影| 久精品免费视频| 亚洲欧美日韩中文在线制服| 国产精品美女主播| 国产国产精品人在线视| 欧美成人在线影院| 亚洲国产精品yw在线观看| 国产精品久久久久久久久久| 国产精品男人的天堂| wwwwwwww亚洲| 疯狂做受xxxx高潮欧美日本| 2019中文字幕全在线观看| 国产成人小视频在线观看| 国产精品扒开腿做爽爽爽男男| 精品欧美国产一区二区三区| 亚洲女人被黑人巨大进入al| 亚洲一区制服诱惑| 国产亚洲精品久久久久久777| 欧美日韩在线免费| 日韩一级黄色av| 国产成人av在线播放| 日韩欧美精品中文字幕| 福利视频一区二区| 欧美激情免费在线| 韩国精品久久久999| 国产日产久久高清欧美一区| 成人精品网站在线观看| 欧美极品在线视频| 久久韩剧网电视剧| 日韩av在线一区二区| 亚洲欧洲激情在线| 欧美贵妇videos办公室| 国产精品主播视频| 精品国产乱码久久久久久婷婷| 成人免费观看网址| 日韩在线欧美在线| 精品久久久久久久大神国产| 日韩中文视频免费在线观看| 伊是香蕉大人久久| 久久激情视频免费观看| 国产丝袜一区二区三区| 日韩视频一区在线| 国产综合香蕉五月婷在线| www日韩中文字幕在线看| 午夜精品www| 亚洲一区二区三区乱码aⅴ蜜桃女| 欧美专区日韩视频| 亚洲电影免费观看| 国内揄拍国内精品| 国产成人亚洲综合91精品| 日韩精品中文字幕久久臀| 伊人久久久久久久久久| 欧美激情精品久久久久久大尺度| 欧美国产日韩二区| 国产精品久久久久一区二区| 欧美一级免费看| 欧美激情小视频| 5566成人精品视频免费|