использовать файл actionscript в библиотеке flex - PullRequest
1 голос
/ 01 июня 2011


я хочу создать собственную библиотеку flex и в этой библиотеке использовать собственный файл Actionscript, который я буду использовать в других компонентах этой библиотеки ... это содержимое файла, например, только код

public function computeSum(a:Number, b:Number):Number {
    return a + b;
}

но когда я могу это создать, просто когда я нажимаю Файл-Новый-ActionScript Файл (имя файла - ОК) находится в окне «Ошибка» Ошибка: Файл, найденный в исходном пути, должен иметь внешне видимое определение. Если определение в файле предназначено для внешнего просмотра, поместите определение в пакет

спасибо за помощь

Ответы [ 3 ]

1 голос
/ 01 июня 2011

Вы должны инкапсулировать его в классе, чтобы использовать его с директивой import, иначе вы можете использовать его с include

Другой подход заключается в создании «вспомогательного» класса или так называемого «одиночного» класса. - класс, имеющий только 1 экземпляр, созданный статически. в этом классе вы можете выставить библиотечные функции, которые вам нужны, и использовать их везде.

package
{
    public class Singleton
    {
        private static var singleton : Singleton

        public static function getInstance() : Singleton
        {
            if ( singleton == null )
                singleton = new Singleton();
        return singleton;
        }

        public function Singleton()
        {
        }


            public function visibleTroughtTheSingletonfunction( arg1 : int ... ) : void
            {
            }

            public static function directlyVisiable() : void
            {
            }
      }
}

доступ к синглтону будет выглядеть примерно так:

Singleton.getInstance.visibleTroughtTheSingletonfunction( 1 );

1011 * OR *

Singleton.directlyVisiable();

в зависимости от ваших потребностей.

1 голос
/ 01 июня 2011

Если вам не нужно изменять файл класса во время выполнения, то скомпилируйте класс действия в библиотеку swc.

создайте проект сценария Action и скомпилируйте его в папку bin, в которой вы нашли файл библиотеки .swc. включите этот .swc в свой проект.

1 голос
/ 01 июня 2011

Ну, во-первых, вам нужно создать класс (и пакет) и поместить этот метод в него (а не просто в пустой файл AS), а во-вторых, если вы хотите иметь доступ к методу, не создавая экземпляркласс делает этот метод static.

...