Question

J'ai un fichier flash as3 et j'importe un fichier HTML contenant ce lien:

<a href="purchase.php?lang=0&"><img src="https://www.paypal.com/en_GB/i/btn/btn_buynowCC_LG.gif" id="paypal_button"></a>

et je ne peux pas pour la vie de le comprendre, j'ai regardé partout.

Quelques forums ont suggéré:

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);
}

(cet exemple est fragmenté, je viens de l'inclure pour illustrer ce que j'essaie de faire)

En gros, je pense que j'ai besoin de charger l'image dans la méthode getImageReference ... mais je suis tellement perdue ... toute aide serait la bienvenue!

Était-ce utile?

La solution

Si vous allez utiliser le < img > balise dans une zone htmlText, & "; vous doit définir le champ de texte sur plusieurs lignes et pour envelopper le texte "

J'ai essayé, et ça marche bien pour moi. Cela a chargé l'image et le lien a également fonctionné. Voici mon code:

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;

Mon exemple utilise de l'AS3 pur, mais il devrait être identique à la sélection de & "multiline &"; et " wordwrap " depuis votre panneau de propriétés de champs de texte.

Autres conseils

La création de liens sur les balises <img> dans TextFields dans Flash peut poser problème.

J'ai remarqué que le problème a été signalé sur le traqueur de bogues d'Adobe ici:

http://bugs.adobe.com/jira/browse/FP-2146

Une fois une solution de contournement, j’ai créé un fichier swf séparé de la même taille que l’image et qui a été incorporé à la place (c’est-à-dire une étape de 160 x 47 et un bouton / MovieClip avec un lien cliquable à l’aide de browseToURL). Fondamentalement, vous pouvez incorporer des fichiers swf dans TextField de la même manière que des images.

Ce n'est pas idéal, mais cela semblait être un bon compromis compte tenu du fait que le «bouton» swf peut maintenant être utilisé et présenté de manière plus ou moins identique à celle utilisée avec la balise <=>.

AIR (Mobile) ignore apparemment les balises IMG pour des raisons de sécurité ... inutile à mon avis. Ajouter que le fait que TextFlow ne soit ni recommandé ni pris en charge pour cela, que ce soit dans Mobile, et de nombreuses autres tentatives infructueuses pour obtenir le rendu d'une balise IMG, est pour le moins difficile. Je parierai presque impossible avec les composants donnés (dans AIR Mobile Land, bien sûr, ce qui n’est pas bien documenté et qui est en conflit avec des sources en ligne sur les problèmes, donc il n’est pas clair et déroutant de sortir de la version bêta).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top