Actionscript 3 для Android - мне подключать слушателей событий мыши к сцене или к отдельным спрайтам? - PullRequest
2 голосов
/ 16 августа 2011

В AS3 на Android плохо с точки зрения производительности подключать прослушиватели событий мыши к отдельным спрайтам, а не к сцене?

Я пишу приложение для телефона Android с использованием AS3 во Flash Builder. Приложение имеет несколько экранов, которые реагируют на прикосновения пользователя. Экраны расположены в иерархии и отображают данные списка, поэтому при нажатии на элемент в списке появляется новый экран с новым подсписком на нем.

Я использую прослушиватель событий для обнаружения ввода с помощью мыши или касания, и на основе прочитанного мной указывается, что производительность намного лучше, если вы сохраняете минимальное количество прослушиваемых объектов, к которым я прикрепил прослушиватели мыши. каждый экран к объекту сцены.

Это все работает нормально, но я обнаружил, что, когда я перемещаюсь между экранами (и они выталкиваются или помещаются в стек дисплеев), я должен следить за множеством добавлений и удалений слушателей к объекту сцены. Если я не сделаю этого, окна будут выше иерархии, чем текущий экран, продолжая получать события мыши.

Если я использовал прослушиватели, прикрепленные к спрайтам в каждом окне, тогда, когда окно было удалено с дисплея, даже если оно хранится в памяти (готово к возврату, когда дочернее окно закрыто), оно не получит никаких событий мыши ....

Производительность, кажется, не влияет на использование слушателей непосредственно на спрайтах при использовании моего телефона HTC для тестирования, однако я, очевидно, не знаю, как это будет на других телефонах. У кого-нибудь есть опыт или взгляд на лучший подход?

1 Ответ

1 голос
/ 16 августа 2011

Я бы порекомендовал использовать Слушатели на определенных спрайтах, поскольку их будет проще кодировать и обслуживать, также преобразование координат может оказаться затруднительным для управления с различными размерами экрана / спрайтов, а удаление / добавление слушателей может быть не таким простым в обслуживании. по мере добавления дополнительных экранов ...

Что касается производительности, я не верю, что Слушатели будут иметь какое-либо влияние, это просто функция, которая вызывается при щелчке спрайта. Если вы не установите Слушатель, ОС все равно регистрирует щелчок и отправляет его. до нижнего уровня просмотра, пока он в конце концов не найдет слушателя события или не отбросит его.

...