Я пытаюсь сделать vieport, в котором вы можете панорамировать, перетаскивая фоновое изображение.
Вот что я сделал: http://students.info.uaic.ro/~tudor.berechet/0sandbox/aperture/science/testing/fatChance.html
Обратите внимание, что я скрыл курсор мыши и заменил его двумя пользовательскими.
Проблема в том, что событие, прикрепленное к фону, которое является событием касания, срабатывает, даже когда указатель мыши находится над спрайтом / фрагментом ролика (обезьяной или статистикой), который находится перед этим фоном. И статистики нет даже в gameLayer (где находятся обезьяна и курсоры мыши и bg). Попробуйте перетащить статистику и увидеть, что фон и все остальное перемещаются вместе с ней (это нежелательно). Кроме того, мне нужно удалить настраиваемый курсор и отображать обычный курсор всякий раз, когда мышь НЕ находится в фоновом режиме (т.е. когда она находится на обезьяне, статистике или любых новых спрайтах, которые у меня могут / будут в будущем).
Я давно не использовал flash, и я не эксперт в этом, но является ли это нормальным поведением для событий, которые запускаются независимо от того, находится ли их отправитель под другими вещами?
Как мне изменить это поведение?
PS: Я прикрепил исходный код к .swf по ссылке выше.
[РЕДАКТИРОВАТЬ] Также, если это имеет какое-либо отношение к чему-либо, я использую Starling для своего GameLayer.
[EDIT2] Похоже, я не очень ясно выразился. Я только хочу, чтобы сцену можно было перетаскивать, IFF мышь находится прямо на фоне. Всякий раз, когда между мышью и фоном есть спрайт, событие фона НЕ должно срабатывать, поэтому я могу изменить курсор и взаимодействовать с указанным спрайтом.
mouseChildren
,mouseEnabled
илиtouchable
просто делают спрайты не интерактивными. Зачем мне это нужно? - person Spectraljump   schedule 07.12.2011mouseChildren
отключает интерактивность дочерних элементов цели. Ни у фона, ни у обезьяны нет детей или нет никаких родственных связей. Кроме того, похоже, что это свойство не реализовано внутриstarling.display.Sprite;
. (Но я пробовал это за пределами Старлинга.) - person Spectraljump   schedule 07.12.2011