Actionscript 3 AS3/空气检查TouchPhase.ENDED是否在对象上方
我正在开发一款iOS/Android应用程序,需要滑出面板和触摸事件。如果用户触摸到某个对象,然后释放该对象,是否可以获取该信息Actionscript 3 AS3/空气检查TouchPhase.ENDED是否在对象上方,actionscript-3,air,Actionscript 3,Air,我正在开发一款iOS/Android应用程序,需要滑出面板和触摸事件。如果用户触摸到某个对象,然后释放该对象,是否可以获取该信息 var touch:Touch = e.getTouch(this); if(touch.phase == TouchPhase.BEGAN) { trace("Tab toggle begin"); } if(touch.phase == TouchPhase.ENDED) { //If not over object do something
var touch:Touch = e.getTouch(this);
if(touch.phase == TouchPhase.BEGAN)
{
trace("Tab toggle begin");
}
if(touch.phase == TouchPhase.ENDED)
{
//If not over object do something
}
是的
这段代码应该对您有所帮助。它可能比您需要的更多,但它很有效。:)
取自
这对我有用!我会把你对我问题的回答写进SO!!
Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
var mySprite:Sprite = new Sprite();
mySprite.graphics.beginFill(0x336699);
mySprite.graphics.drawRect(0,0,40,40);
addChild(mySprite);
var myTextField:TextField = new TextField();
addChild(myTextField);
myTextField.width = 200;
myTextField.height = 20;
var touchMoveID:int = 0;
mySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin);
function onTouchBegin(event:TouchEvent) {
if(touchMoveID != 0) {
myTextField.text = "already moving. ignoring new touch";
return;
}
touchMoveID = event.touchPointID;
myTextField.text = "touch begin" + event.touchPointID;
stage.addEventListener(TouchEvent.TOUCH_MOVE, onTouchMove);
stage.addEventListener(TouchEvent.TOUCH_END, onTouchEnd);
}
function onTouchMove(event:TouchEvent) {
if(event.touchPointID != touchMoveID) {
myTextField.text = "ignoring unrelated touch";
return;
}
mySprite.x = event.stageX;
mySprite.y = event.stageY;
myTextField.text = "touch move" + event.touchPointID;
}
function onTouchEnd(event:TouchEvent) {
if(event.touchPointID != touchMoveID) {
myTextField.text = "ignoring unrelated touch end";
return;
}
touchMoveID = 0;
stage.removeEventListener(TouchEvent.TOUCH_MOVE, onTouchMove);
stage.removeEventListener(TouchEvent.TOUCH_END, onTouchEnd);
myTextField.text = "touch end" + event.touchPointID;
}