我在製作as3/flash cs6中的交互式地圖。目前,我已經可以放大和縮小,並且可以拖動它。如何限制動畫片段可拖動的區域?
但我的問題是,如何我限制地圖可以拖動的區域,所以你不能看到它外面的空白?
這裏是我的代碼:
import flash.events.MouseEvent;
function initDragger(mc:MovieClip):void
{
mc.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
mc.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
}
function mouseDownHandler(e:MouseEvent):void
{
e.currentTarget.startDrag();
}
function mouseUpHandler(e:MouseEvent):void
{
e.currentTarget.stopDrag();
}
// Set up drag
initDragger(map);
zoomIn.addEventListener(MouseEvent.CLICK, mapzoomin);
function mapzoomin(event:MouseEvent):void
{
if (map.scaleX < 10)
{
map.scaleX += 1;
map.scaleY += 1;
}
}
zoomOut.addEventListener(MouseEvent.CLICK, mapzoomout);
function mapzoomout(event:MouseEvent):void
{
if (map.scaleX > 1)
{
map.scaleX -= 1;
map.scaleY -= 1;
}
}
startDrag可以接受矩形(邊界),您可以在其中拖動項目。看看http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/Sprite.html#startDrag%28%29 – Urosan
好的,我明白了。那麼,我只是把界限和我的地圖一樣嗎? –