我有一个flash as3文件,我正在导入包含此链接的HTML文件:
<a href="purchase.php?lang=0&"><img src="https://www.paypal.com/en_GB/i/btn/btn_buynowCC_LG.gif" id="paypal_button"></a>
我无法为我的生活弄清楚,我到处都是。
有几个论坛建议:
function onTicketLoad():void {
if(paypal != null && this.contains(paypal)) {
removeChild(paypal);
}
var imgLoader:DisplayObject = content_text.getImageReference("paypal_button");
//imgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,onHtmlImageLoaded);
paypal.addChild(imgLoader.content);
}
function onHtmlImageLoaded(e:Event):void {
e.target.removeEventListener(Event.COMPLETE, onHtmlImageLoaded);
paypal.addChild(e.target.content);
paypal.buttonMode = true;
paypal.useHandCursor = true;
addChild(paypal);
}
(这个例子完全是碎片,我只是把它包括在内以说明我想要做的事情)
基本上我认为我需要将图像加载到getImageReference方法中...但我很丢失......任何帮助都会受到赞赏!
答案 0 :(得分:2)
我发现在Flash中的TextFields中<img>
标签上创建链接可能会有问题。
我发现这个问题已在adobe bug tracker上报告:
http://bugs.adobe.com/jira/browse/FP-2146
一旦作为一种解决方法,我创建了一个单独的swf文件,其大小与图像完全相同,而是嵌入(即160x47舞台和带有使用navigateToURL的可点击链接的MovieClip /按钮)。基本上,您可以像在图像中一样在TextFields中嵌入swf文件。
这并不理想,但考虑到swf'按钮'现在可以使用和布局的方式与使用<img>
标签的方式大致相同,看起来确实是一个不错的折衷方案。
答案 1 :(得分:1)
如果您打算使用&lt; img&gt;标记在htmlText框中,“you must set the text field to be multiline and to wrap text”
我尝试过,它对我来说很好。它加载了图像,链接也工作了。这是我的代码:
import flash.text.TextField;
var labelText:String = '<a href="purchase.php?lang=0&"><img src="https://www.paypal.com/en_GB/i/btn/btn_buynowCC_LG.gif" id="paypal_button"></a>';
var label:TextField = new TextField();
label.border = true;
label.multiline = true;
label.wordWrap = true;
label.width = 200;
label.height = 100;
addChild(label);
label.htmlText = labelText;
我的示例使用纯AS3,但它应该与从textfields属性面板中选择“multiline”和“wordwrap”完全相同。
答案 2 :(得分:1)
AIR(移动)显然忽略了IMG标签的安全性......在我看来毫无用处。 在移动设备中不建议或不支持TextFlow这一事实,并且到目前为止,许多其他尝试获取IMG标签的尝试都无法实现。我会用给定的组件几乎不可能下注(当然,在AIR Mobile的土地上,没有很好的文档记录,并且与围绕这些问题的在线资源有冲突,因此不清楚并且混淆了新的测试版)。