В приведенном ниже коде я создал 4 спрайта (пикн) внутри спрайта (noteholder). Как я могу получить абсолютные значения экземпляров picn, которые я создаю? Я знаю о функции localToGlobal, но я не могу понять, как использовать это в этом случае. На данный момент, я думаю, мне нужен контейнер, потому что мне нужно иметь возможность перемещать спрайты после создания. Любая помощь приветствуется. Благодаря!Получить глобальную координату динамически созданного вложенного компонента?
package
{
import flash.display.Bitmap;
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.Point;
import Main;
public class Notes extends Sprite
{
private var speed:int = 14;
[Embed(source="../lib/Dodgethis.jpg")]
private var picn:Class;
private var noteholder:Sprite = new Sprite();
public function appear() {
trace ("appear ran")
var arr1:Array = new Array;
var numnotes:Number = 4;
Main.StageRef.addChild(noteholder);
trace (noteholder.x, noteholder.y);
for (var i = 0; i < numnotes; i++)
{
//trace (i);
var nbm:Bitmap = new picn;
noteholder.addChild(nbm);
nbm.y = i * 50;
arr1.push(nbm);
Рассмотрим http://stackoverflow.com/questions/6062209/flash-as3-understanding-localtoglobal –
Спасибо, но я не могу сослаться на точку, я хочу использовать метод localToGlobal, потому что это не созданный во время выполнения, и у меня нет способа ссылаться на него по имени (по крайней мере, я не могу понять, как ссылаться на них по имени из-за области переменных) – something13
Учитывая ваш код выше, вы можете ссылаться на эти растровые изображения двумя способами - либо через массив например 'arr1 [0]' или из спрайта 'noteholder.getChildAt (0)' - вам, вероятно, следует предпочесть 'arr1', и вы, вероятно, должны поместить его в объект и переименовать его' noteSprites' или что-то более четкое. Вам не нужно действительно возиться с именованием динамически созданных объектов отображения. –