2016-05-12 41 views
0

我正在使用AS3 htmlText屬性TextField並且我想將自定義精靈嵌入到html中。 The documentation說,您可以使用鏈接標識符爲此庫中的影片剪輯元件。所以我寫了:如何將參數傳遞給構造函數使用包含鏈接標識符的字符串包含影片剪輯符號

public class ImageWrapper extends Sprite 
{ 
    [Embed(source = 'test.png')] 
    private var TestImg:Class; 

    public function ImageWrapper() 
    { 
     var bitmap:Bitmap = new TestImg(); 
     addChild(bitmap); 
    } 
} 

然後爲htmlText

myTextField.htmlText = "Test <img src='" + getQualifiedClassName(ImageWrapper) + "'>"; 

這完美的作品。但是,當我試圖通過通過構造什麼,改變定義

public function ImageWrapper(foo:int) 

和更新的HTML:

"Test <img src='" + getQualifiedClassName(ImageWrapper) + "(400)'>"; 

Unhandled IOErrorEvent:. text=Error #2035: URL Not Found.

我搜索文檔我得到的,但我沒有找到一種爲構造函數傳遞參數的方法。我錯過了什麼,或者根本不可能這樣做?我只需要發送元到我的構造函數(如intString

+0

參數的目的是什麼? – null

回答

1

是的,那是不可能通過任何其他參數爲HTML圖像類,唯一的辦法是讓儘可能多的班,你有儘可能多的選擇。

+0

可惜。好的,謝謝! – PiotrK

0

我相信我找到了一個解決辦法:

public class ImageWrapper extends Sprite 
{ 
    [Embed(source = 'test.png')] 
    private var TestImg:Class; 
    public static var x:int = 0; 
    private var loc_x:int; 

    public function ImageWrapper() 
    { 
     loc_x = x; 
     var bitmap:Bitmap = new TestImg(); 
     addChild(bitmap); 
    } 
} 

然後在我的代碼:

ImageWrapper.x = 400; 
myTextField.htmlText = "Test <img src='" + getQualifiedClassName(ImageWrapper) + "'>"; 
ImageWrapper.x = 200; 
myOtherTextField.htmlText = "Test2 <img src='" + getQualifiedClassName(ImageWrapper) + "'>"; 

的缺點是,你有ImageWrapper定義,你只能使用盡可能多的ImageWrapper的單一的htmlText (所以你需要創建類ImageWrapper1,ImageWrapper2等)

+0

是的,當然,如果你在隊列中創建像那樣的圖像,你可以使用任何靜態存儲來獲取變量:) – fsbmain

相關問題