64. [junior] Event Part3. Приоритет события. priority

junior – серия статей для начинающих ActionScript-разработчиков.
Все статьи серии:
http://flashpress.ru/blog/category/junior/

События – это очень мощный инструмент в языке ActionScript. И поэтому очень важно научиться правильно применять их в разработке Flash-приложений. В предыдущих статьях серии мы разобрали общие вопросы событий, и три фазы события. В этой статье мы поговорим о том как можно задавать очередность срабатывания событий.

Если например в одном классе(или в другом) клик по одному объекту слушают два обработчика, и вам необходимо сделать так что бы один обработчик выполнялся строго раньше другого, вы можете воспользоваться четвертым параметром в методе addEventListener, это параметр priority(приоритет). По умолчанию параметр имеет значение 0. Если вы зададите значение приоритета больше нуля, то этот обработчик будет гарантировано выполняется раньше. Если у обработчиков заданы одинаковые значения приоритета(например значение по умолчанию 0), то обработчики срабатывают в том порядке, в котором они были добавлены с помощью метода addEventListener. Что бы понять как это работает, посмотрите на пример ActionScript3.0 кода:

В этом примере первым срабатывает обработчик события clickHandler1, а затем clickHandler2, потому что добавление обработчика clickHandler1 в методе addEventListener стоит раньше чем clickHandler2. Если вам необходимо что бы clickHandler2 срабатывал раньше чем clickHandler1, сделать это можно так:

Обратите внимание на строчку 10. Там мы задали четвертым параметром priority=1, а это значит что обработчик clickHandler2 сработает гарантированно раньше чем clickHandler1.

Параметр priority имеет тип int, а это значит что максимально допустимое значение для этого параметра, это int.MAX_VALUE. Можно так же задавать отрицательные значения. Т.е. если у вас есть обработчик со значением приоритета по умолчанию 0, и есть еще один обработчик с отрицательным значением, это значит что первым будет выполняться обработчик с приоритетом 0. Минимально допустимое значение, это int.MIN_VALUE.

Да прeбудет с вами Flash.
Serious Sam
Эту статью прочитали 995 раз

Возникли вопросы по статье? Не стесняйтесь спрашивать в комментариях или любым другим способом на странице Контакты .

Присоединяйтесь к нам в социальных сетях: ВКонтакте , Twitter и Facebook
Понравилась статья? Буду благодарен если вы поделитесь ссылкой с друзьями:


Комментарии ВКонтакте:




Комментарии Facebook:




Комментарии WordPress: