0

マウス イベントをスワイプ イベント (タッチ スクリーン用) に変換しようとしていますが、何時間も経ってもその方法がわかりません。

これが私のコードです:

public function DraggedItem(stageRef:Stage, grabbedItem:Object){

            this.stageRef = stageRef;
            toolbar = Engine.toolbar;
            usableItems = Engine.usableItems;
            inv = Engine.inv;
            puzzle = Engine.puzzle;
            player = Engine.player;
            linesData = Engine.linesData;

            inv.draggingItem = true;
            Mouse.hide();

            itemRef = getDefinitionByName(grabbedItem.displayName.toLowerCase()+"Proper");
            draggedItem = new itemRef;
            stageRef.addChild(draggedItem);
            draggedItem.displayName = grabbedItem.displayName;
            if (grabbedItem.lookTag)
                draggedItem.lookTag = grabbedItem.lookTag;
            draggedItem.x = mouseX + x;
            draggedItem.y = mouseY + y;
            draggedItem.scaleX = itemScale;
            draggedItem.scaleY = itemScale;
            stageRef.addEventListener(MouseEvent.MOUSE_MOVE, dragItem, false, 0, true);
            stageRef.addEventListener(Event.ENTER_FRAME, itemHitTest, false, 0, true);
            draggedItem.addEventListener(MouseEvent.CLICK, itemClick, false, 0, true);

        }

        private function dragItem(e:MouseEvent):void{
            draggedItem.x = mouseX + x;
            draggedItem.y = mouseY + y;
        } 

私のコンピューターでは、インベントリをクリックしてアイテムを選択すると、画面上の好きな場所にドラッグできます (アイテムがマウスになり、マウスが非表示になります)。

だから私はそれをタッチスクリーン用に変換しようとしています。「mouseX」の代わりに「event.stageX」を使用しようとしましたが、うまくいきませんでした。mouseEvent を TransformGestureEvent に置き換えようとしましたが、うまくいきませんでした。

また、インベントリで自分のアイテムをクリックすると、アイテムが画面の中央隅に固定されたままになり、移動できなくなります。(Adobe Air for Androidでエクスポートしているときに発生します.swfでエクスポートしている場合は問題なく動作しています)。

どうすればできるか知っていますか?

問題のビデオは次のとおりです。uploaded.net/file/lkwqsgm7

どうもありがとうございました !

4

1 に答える 1