2011-11-04 22 views
0

我有一個只包含庫資源的swf,沒有代碼。它由另一個有代碼的swf加載。當我包含TLFTextfield時,閃爍 - 符號從swf中消失

圖書館swf有大約280個符號被導出用於AS3。所有的工作都很好,直到我製作一個包含TLFTextField的新動畫片段,而不是一個TextField。當我構建swf時,沒有警告或錯誤,但是在運行時,我無法從庫swf加載任何資源。對於每個資產,hasDefinition總是返回false。

我把swf給了一位使用010編輯器查看swf中所有定義的同事,他說沒有符號。我刪除了TLFTextField,重建了swf,並再次給了他。他說現在它有280個符號。

不管怎樣,編譯TLFTextfield和編譯都會搞砸swf中的每個符號,即使在編譯時沒有任何警告或錯誤。有關它爲什麼這樣做的任何想法?順便說一句,我正在使用CS5。

+0

當我說'與TextField相反'時,我應該說'與經典文本相反' –

回答

0

默認情況下,textLayout.swc(由TLFTextField使用)作爲RSL導出(到一個單獨的SWZ文件中),並且SWF獲取一個預加載器SWF存根添加到它,負責加載該SWZ文件。

不知道如何添加預加載器,但如果我用Flashdevelop檢查SWF,我只能看到預加載器中的符號。不是我爲Action Script導出的符號,我假設主SWF被添加到preloader存根,並以某種方式被preloader加載。

你必須去發佈設置 - >動作腳本3.0設置 - >庫選項卡 - >選擇textLayout.swc並在底部更改默認鏈接到「合併到代碼」。這有希望解決您的問題。

+0

感謝Josha,解決了問題:) –