AS3 / AIR检查TouchPhase.ENDED是否在对象上方 [英] AS3/AIR check if TouchPhase.ENDED is over object
本文介绍了AS3 / AIR检查TouchPhase.ENDED是否在对象上方的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在开发一个需要滑出面板和触摸事件的iOS / Android应用。
I am developing an iOS/Android app that requires slide out panels and touch events. Is it possible to get if a user touches an object but then releases off the object?
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
}
推荐答案
是的。
此代码应为您提供帮助。它可能超出了您的需求,但可以工作。 :)
来自 Adobe网站:
This code should help you. It may be more than you need but it works. :) Taken from Adobe website:
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;
}
这篇关于AS3 / AIR检查TouchPhase.ENDED是否在对象上方的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文