В настоящее время я пытаюсь создать несколько текстовых полей, которые перетаскиваются и отбрасываются. Я следовал учебник ранее, который используется каре в качестве примера, где вы могли бы использовать:Starling textField touch event
var target:Quad = event.target as Quad;
, которые ориентированы на квадроцикле, что вы парили над, я пытался изменить его
var target:TextField = event.target as TextField;
где при компиляции дал мне ошибку «Невозможно получить доступ к свойству или методу ссылки на нулевой объект». Я не совсем уверен, в чем проблема, если кто-то может это понять для меня, это было бы здорово.
Вот остальная часть кода вот отношение:
public function onAdded():void{
//stuff that initialises bitmap
for(var i:int=0; i<3; i++){
//create Textfield
var bmpFont:starling.text.TextField = new starling.text.TextField(100,100, "test", "Arial", 10);
bmpFont.fontSize = 50;
if(i==0){
bmpFont.color = Color.WHITE;
}
else if (i==1){
bmpFont.color = Color.RED;
}
else if (i==2){
bmpFont.color = Color.BLUE;
}
bmpFont.x = Math.random() * (stage.stageWidth - bmpFont.width);
bmpFont.y = stage.stageHeight/2;
//centering pivot point
bmpFont.pivotX = 50;
bmpFont.pivotY = 50;
//centering code
//bmpFont.x = stage.stageWidth - bmpFont.width >> 1;
//bmpFont.y = stage.stageHeight - bmpFont.height >> 1;
useHandCursor = true;
bmpFont.addEventListener(starling.events.TouchEvent.TOUCH, onTouch);
parent.addChild(bmpFont);
}
ontouch функция:
//function activating on touch
public function onTouch(event:starling.events.TouchEvent):void{
var touches:Vector.<Touch> = event.getTouches(stage, TouchPhase.MOVED);
//var target:Quad = event.target as Quad;
var target:starling.text.TextField= event.target as starling.text.TextField
//single finger manipulations
if(touches.length == 1){
var delta:Point = touches[0].getMovement(parent);
target.x += delta.x;
target.y += delta.y;
}
вы уверены, что эта отливка не вызывает нуль целевой объект? var target: starling.text.TextField = event.target как starling.text.TextField –
Я не совсем уверен, что вы имеете в виду, не могли бы вы уточнить? – David
Я забыл упомянуть, что ошибка возникает, когда я пытаюсь переместить textField, а не сразу после запуска. – David