我有一个矩形mc。当用户在mc上慢慢地向右滑动手指时,需要增加一个值,如果向左移动,则会减小。 1到100是限制。我怎么做?我不想要一个可见的滑块。手指在mc上的位置,手指在哪个方向上移动无关紧要。
编辑:我目前正在调查touchEvent并正在研究网络以寻求解决方案。答案 0 :(得分:1)
您需要跟踪是否正在进行滑动,如果正在进行滑动,则需要进行跟踪。
var dragging:Boolean = false;
var startX:Number = 0.0;
然后你将使用简单的事件监听器来跟踪这个bool。
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;
}
节日快乐!