Ich habe eine Methode: myMethod() {}
, die ich für JavaScript zugänglich machen möchte. Ich habe ein bisschen recherchiert und herausgefunden, können Sie einen Rückruf zu ExernalInterface hinzufügen müssen, so ist hier, was ich getan habe:Referenzieren Problem beim Hinzufügen von Callbacks Exernal Interface in Flash/ActionScript3
ExternalInterface.addCallback("invokeMyMethod", myMethod);
Nun, wenn ich meine Web-Seite mit dem Blitz auf sich laden, bekomme ich ein Fehler:
ReferenceError: Fehler # 1065: Variable myMethod ist nicht definiert. bei Haupt $ CINIT() bei global $ init()
myMethod ist in der Hauptklasse enthalten ist ... hier ist, wie Main.as aussieht:
package {
import flash.external.ExternalInterface;
import flash.events.Event;
//import a bunch of other things...
if(ExternalInterface.available) {
ExternalInterface.addCallback("invokeMyMethod", myMethod);
}
public class Main extends Sprite {
//A bunch of other methods...
public function myMethod(str:String):void {
//Do something here
}
}
}
ich keine Ahnung, wie man ExernalInterface.addCallback
erkennen, dass myMethod
existiert ... Hat jemand irgendwelche Ideen?
Danke,
Matt
gibt es einen anderen Weg, um es anderen zu tun, als es statisch zu machen? Ich habe versucht, zu setzen: ExternalInterface.addCallback ("invokeMyMethod", Main.myMethod); in der Hauptklasse und ich bekomme immer noch den gleichen Referenzfehler ... Ich kann mir nicht vorstellen, was ich sonst noch machen soll. – Matt
btw statisch wurde diesen Fehler los, aber es hat andere erstellt, deshalb würde ich es vermeiden wollen, es statisch zu machen, wenn ich kann – Matt