0

因此,我一直在编写此代码数周(我是 AS3 的初学者),但我一生都无法弄清楚如何编写接收触摸输入的工作移动按钮。此代码仿照 Adob​​e Samples 之一,但是当我运行它时它不起作用。

这是我的代码:

package MovementButtons
{
    import flash.events.Event;
    import flash.display.MovieClip;
    import flash.display.SimpleButton;
    import flash.events.TouchEvent;


    public class TouchInput extends MovieClip
    {
        public var bLeftPressed:Boolean = true;
        public var bRightPressed:Boolean = true;

        public var nSpeed:Number = 100;
    }

    public function TouchInput()
    {
        left_btn.addEventListener(TouchEvent.TOUCH_BEGIN, TouchBeginHandler, false, 0, true);
        left_btn.addEventListener(MouseEvent.TOUCH_END, TouchEndHandler, false, 0, true);
        right_btn.addEventListener(TouchEvent.TOUCH_BEGIN, TouchBeginHandler, false, 0, true);
        right_btn.addEventListener(TouchEvent.TOUCH_END, TouchEndHandler, false, 0, true);

        //Updating Screen
        addEventListener(TouchEvent.TOUCH_BEGIN, enterFrameMoveHandler);
    }

    protected function enterFrameMoveHandler(event:TouchEvent):void
    {
        var click.txt:String= "The function is working";
        while ( bLeftPressed ) {
            guy_mc.x -= nSpeed;
        }
        while( bRightPressed ) {
            guy_mc.x += nSpeed;
        }
    }

    protected function TouchBeginHandler(event:TouchEvent):void
    {
        click.txt = "Its clicked.";
        switch ( event.target )
        {
            case left_btn:
                left = true;
                break;
            case right_btn:
                right = true;
                break;
        }
    }

    protected function TouchEndHandler(event:MouseEvent):void
    {
        switch ( event.target )
        {
            case left_btn:
                left = false;
                break;
            case right_btn:
                right = false;
                break;
        }
    }   
}
4

1 回答 1

0

看看Multitouch.inputMode。这决定了应用程序接受什么类型的触摸输入。它默认为GESTURE您需要时TOUCH_POINT

或者,您可以只使用MouseEvent等价物。在触摸设备上,MouseEvents 的调度方式与TouchEvents 几乎相同。大多数开发TouchEvent人员完全忽略该类,除非有特定原因需要使用它。

为了将来参考,您应该在问题中包含除“它不起作用”之外的更多详细信息。我们试图在这里盲目地调试问题,因此您可以提供给我们的信息越多越好。幸运的是,在处理触摸事件时这是一个相当普遍的问题

于 2013-11-11T19:42:09.873 回答