我有一个矩形 mc。当用户在mc上慢慢向右滑动手指时,需要增加一个值,如果向左移动,它会减少。1到100是极限。我怎么做?我不想要一个可见的滑块。手指在 mc 上的哪个位置无关紧要,只要手指在哪个方向移动即可。
编辑:我目前正在研究 touchEvent 并正在研究网络以寻找解决方案。
我有一个矩形 mc。当用户在mc上慢慢向右滑动手指时,需要增加一个值,如果向左移动,它会减少。1到100是极限。我怎么做?我不想要一个可见的滑块。手指在 mc 上的哪个位置无关紧要,只要手指在哪个方向移动即可。
编辑:我目前正在研究 touchEvent 并正在研究网络以寻找解决方案。
您需要跟踪是否正在发生滑动,如果发生了,它从哪里开始。
var dragging:Boolean = false;
var startX:Number = 0.0;
然后,您将使用简单的事件侦听器来跟踪此布尔值。
mc.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
mc.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
function mouseDown(event:MouseEvent):void
{
dragging = true;
startX = event.localX;
}
function mouseReleased(event:MouseEvent):void
{
dragging = false;
}
然后你的MOUSE_MOVE
触摸事件可以处理所有的逻辑:
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMove); // Notice this event is on stage, not mc.
function mouseMove(event.MouseEvent):void
{
value += event.localX - startX;
if (value < 0) value = 0;
if (value > 100) value = 100;
}
节日快乐!