(Обратите внимание, что я изменил ваш закрывающий тег ниже. Если вы его пропустите, это вызовет головную боль.
Похоже, все, что вам нужно сделать, это добавить идентификатор в свой пользовательский класс:
<com id="myCustomClass">
</com:MyAS3DocClass>
И тогда вы можете просто получить доступ к этому значению как имени переменной внутри тега скрипта:
public function call_from_outside():void
{
myCustomClass.hitme();
//other stuff
}
И ЗДЕСЬ ПОЧЕМУ!
Когда вы назначаете идентификатор тегув файле MXML это то же самое, что добавить public var <your-variable-name-here>:<tag-class>
к файлу AS (конечно, это делается компилятором, поэтому вам не нужно об этом беспокоиться).После того, как вы назначите идентификатор для MyAS3DocClass, он сразу станет общедоступной переменной.Если это общедоступная переменная, ее можно использовать в публичных, защищенных, внутренних, пространствах имен и частных функциях!
Если вам не нравится эта идея, а ваш пользовательский класс - DisplayObject, вы также можетесделать это:
<com:MyAS3DocClass name="myCustomClass" />
затем в теге script:
public function call_from_outside():void
{
MyAS3DocClass(getChildByName("myCustomClass")).hitme();
//other stuff
}