【问题标题】:AS3 Draggable layer/mask on y axisy 轴上的 AS3 可拖动图层/蒙版
【发布时间】:2015-02-03 20:23:09
【问题描述】:

我想创建这个确切的例子:http://www.nytimes.com/2008/12/28/nyregion/18thennow.html?_r=2& 但是,阻力发生在 y 轴上而不是 x 轴上。我正在使用一些基本代码,但想知道如何将其锁定到位?

myImage.mask = myMask;
stage.addEventListener(MouseEvent.MOUSE_DOWN, fMouseDown);
 stage.addEventListener(MouseEvent.CLICK, fMouseUp);
function fMouseDown(e:MouseEvent):void {
 myMask.startDrag();
 }
 function fMouseUp(e:MouseEvent):void {
 myMask.stopDrag();
 }

这不是我所需要的,有什么帮助吗?提前致谢!

【问题讨论】:

    标签: image actionscript-3 draggable mask movieclip


    【解决方案1】:

    The documentation of startDrag() 告诉你第二个可选参数bounds

    bounds:Rectangle (default = null) — 相对于 Sprite 父级坐标的值,指定 Sprite 的约束矩形。

    y 轴是一个宽度为零的矩形。

    为了同时拖动手柄和遮罩,请将它们放入容器Sprite 对象中。这应该是您调用startDragstopDrag 的对象。 但是,如果您只想在按下手柄(而不是整个遮罩)时启动拖动,请在处理程序上注册鼠标事件的侦听器。

    【讨论】:

    • 我确实读过它,这些论坛:smh .. 如果我不感到困惑,我不会要求更多示例。可以将此矩形设置为舞台边界,还是我只需输入与舞台尺寸相同的值。我看到边界框是如何设置的,但我看不到它是如何应用于蒙版的。你真的看过我发布的关于我想要做什么的例子吗?只是好奇-感谢您的帮助....
    • “更多的例子”只是一个广泛的问题。是的,很明显你很困惑,但如果不说明你到底在困惑什么,很难提供帮助。矩形可以设置为您想要的任何值。我在回答中提供了关于如何实现沿 y 轴运动的期望限制的建议。这是否允许您以所需的方式移动手柄?是的,我查看了链接,但我需要更多关于如何设置面具的信息。您是如何创建手柄和蒙版的?
    • 抱歉,没有足够的清晰度/信息。我感谢您提供的链接 - 我不清楚如何仅创建手柄作为拖动点而不是整个蒙版。 (我没有在 NY Times 链接中创建示例)我基本上希望准确地重新创建示例链接中的内容,但在另一个静态图像上使用了一个可拖动的蒙版。
    • 现在是我对这个答案有些困惑,但我想我现在明白了。要仅使句柄成为拖动点,请仅在句柄上注册鼠标事件的侦听器,但在两者(蒙版和句柄)上开始拖动。这可以通过将两者都放入容器中来实现。我将其添加到我的答案中。
    • 我为我在这里的密度道歉,但你能告诉我一个我所拥有的编码示例吗?还是我的代码示例偏离了基础?感谢您的宝贵时间!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-22
    • 1970-01-01
    • 2010-12-08
    • 1970-01-01
    相关资源
    最近更新 更多