欢迎来到StackOverflow。我通常不会使用触摸事件,因为我开发的软件是桌面软件,而不是移动软件。不过,我确实有一个想法。我不会冒用代码,因为没有任何经验写触摸相关的事件监听器,我可能会出错。不过,我相当确信该方法可行。如你所知,对于AS3中的每个事件,都有相当多的关于它的数据。通常出现在与鼠标和触摸有关的事件上的一段数据是位置 - 触摸发生在屏幕或对象上的哪个位置。
我会建议使用这些数据来调整屏幕上图片的位置,方法是使用触摸事件的坐标作为视图的新“中心”。我还没有提供代码,因为我之前从来没有写过一个触摸相关的事件监听器(我总是使用鼠标和键盘事件)。但是,我会冒昧认为这个可能的来源如果触摸是类似鼠标的信息,可在onZoom函数中的e.x
和e.y
属性中找到。
我也冒昧地说,你可以用算法来计算你的图片的新位置,如下所示。我假设图片的注册点是左上角。 [这不是代码]
w=picture width
h=picture height
x=picture x position on stage
y = picture y position on stage
tx=touch event x on stage
ty=touch event y) on stage
x = (w/2) - tx
y = (h/2) - ty
希望这有助于!
编辑:要访问X,Y,W和H名为 “图片” 的图片,只需使用性质picture.x
,picture.y
,,并picture.height
为您的变量。
另一个警告...... EVENT上的x和y可能在舞台上,或者在对象本身上。你会想使用跟踪语句和一些常识来解决这个问题,并可能需要一些更复杂的数学。不过,我不想给你太多,因为这是课程,就像你说的。
你无法拒绝帮助她看到这张照片:D –