首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AS3拖拽问题

AS3拖拽问题
EN

Stack Overflow用户
提问于 2017-09-15 23:06:12
回答 1查看 41关注 0票数 0

我有一个电影剪辑列表,每个剪辑都有许多孩子的

代码语言:javascript
复制
stage.addEventListener(TouchEvent.TOUCH_BEGIN, fl_TouchBeginHandler);
stage.addEventListener(TouchEvent.TOUCH_MOVE, fl_TouchMoveHandler);

var last_posY: Number;
function fl_TouchBeginHandler(eve: TouchEvent): void {

    last_posY= eve.stageY;
}
function fl_TouchMoveHandler(eve: TouchEvent): void {
    for(var i=0;i<movieClipsArray.lenght;i++){
        movieClipsArray[i].y-=eve.stageY - delta_posY;
 }
    last_posY= eve.stageY;
}

我正在尝试滚动电影剪辑列表当我拖拽在舞台的一部分是空的,每件事都工作,但当我拖拽电影剪辑它有一个问题(例如,当滚动它抖动没有任何原因),在一些调试后,我发现当我拖拽和eve.target的变化(从一个电影剪辑嵌套的孩子到另一个)的eve.stageY改变有线方式导致的震动,我如何防止它?

EN

回答 1

Stack Overflow用户

发布于 2017-09-15 23:45:14

您的问题最像是您计算y位置的方式。如果你想让它是相对的,你必须只使用delta值(并且只使用stageY值来确定向上或向下)

代码语言:javascript
复制
var direction:int = eve.stageY > lastPosY ? 1 : -1; //if the latest mouse/touch position is greater than before (lower on the screen), use a value of 1 (down)
movieClipsArray[i].y -= delta_posY * direction; //multiply the delta by the direction

也就是说,您可能会发现使用容器并滚动该容器要容易得多。如果你使用的是AnimateCC,你可以选择你所有的剪辑,点击F8并创建一个包含所有剪辑的新MovieClip。或者,通过代码来实现:

代码语言:javascript
复制
var container:Sprite = new Sprite();
addChild(container);

container.addChild(mc1); //do this for all your clips instead of using an array

然后像这样修改你的代码:

代码语言:javascript
复制
stage.addEventListener(TouchEvent.TOUCH_BEGIN, fl_TouchBeginHandler);
stage.addEventListener(TouchEvent.TOUCH_MOVE, fl_TouchMoveHandler);

var offset: Number = 0;
function fl_TouchBeginHandler(eve: TouchEvent): void {
    offset = container.y - eve.stageY;
    //offset is the initial difference between the touch point and container's y. You use this to make sure it doesn't jump when you first touch it
}

function fl_TouchMoveHandler(eve: TouchEvent): void {
    container.y = eve.stageY + offset
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46242642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档