我在我的游戏类(非主类)中实现了触摸事件。
addEventListener(starling.events.TouchEvent.TOUCH, onTouch);
function onTouch(e:starling.events.TouchEvent) {
var touch:Touch = e.getTouch(stage) as Touch;
}
在FlashDevelop中的移动模拟器中进行测试时,处理程序可以正常工作。
在运行iOS 7的iPad上进行测试时,它不会启动。
我错过了什么吗?
我在Main.as的开头有这个:
// touch or gesture?
Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
Starling.multitouchEnabled = true;
米尔扎
答案 0 :(得分:0)
您需要向我们展示您在事件处理程序中尝试执行的操作,因为您现在的问题是使用该代码。
您在问题中所做的只是创建指向触摸事件的指针。
答案 1 :(得分:0)
我正在向box2d机构施加力,我在FlashDevelop模拟器中使用它,但它在iOS设备上不起作用:
if (touch && touch.phase == TouchPhase.ENDED) {
//do something
var mouseX_m:Number = touch.globalX;
var mouseY_m:Number = touch.globalY;
var xDiff:Number = mouseX_m - (_whiteBall.GetPosition().x * WORLD_SCALE);
var yDiff:Number = mouseY_m - (_whiteBall.GetPosition().y * WORLD_SCALE);
var angle:Number = Math.atan2(yDiff, xDiff);
var angleDeg = angle * 180 / Math.PI;
//que_mc.rotation = angleDeg;
var len = Math.sqrt((xDiff * xDiff) + (yDiff * yDiff));
var vx = len * Math.cos(angle);
var vy = len * Math.sin(angle);
var vel = _whiteBall.GetLinearVelocity();
vel.x += (vx * 5);
vel.y += (vy * 5);
//apply force
var force = new b2Vec2(vel.x, vel.y);
_whiteBall.SetAwake(vel);
_whiteBall.SetLinearVelocity(force);
}