Android DynamicRegistration.scale缩放限制?

Android DynamicRegistration.scale缩放限制?,android,actionscript-3,apache-flex,flex4.5,pinchzoom,Android,Actionscript 3,Apache Flex,Flex4.5,Pinchzoom,我已经检查了一些以前的问题,如和,但没有解决我的问题。我有一个缩放功能: protected function onZoom(e:TransformGestureEvent, img:Image):void { DynamicRegistration.scale(img, new Point(e.localX, e.localY), img.scaleX*e.scaleX, img.scaleY*e.scaleX);

我已经检查了一些以前的问题,如和,但没有解决我的问题。我有一个缩放功能:

protected function onZoom(e:TransformGestureEvent, img:Image):void
            {
                DynamicRegistration.scale(img, new Point(e.localX, e.localY), img.scaleX*e.scaleX, img.scaleY*e.scaleX);
            }
缩放也很有效(很好!),但我想将缩放限制在2.5x和.8x。所以我的第一个想法是试试这个:

protected function onZoom(e:TransformGestureEvent, img:Image):void
            {
                while(img.scaleX <= 2.5 && img.scaleX >= .8)
                    DynamicRegistration.scale(img, new Point(e.localX, e.localY), img.scaleX*e.scaleX, img.scaleY*e.scaleX);
            }
缩放时受保护的函数(e:TransformGestureEvent,img:Image):无效 { 而(img.scaleX=.8) DynamicRegistration.scale(img,新点(e.localX,e.localY),img.scaleX*e.scaleX,img.scaleY*e.scaleX); } 但是,它在没有任何类似“捏缩到缩放”的交互作用的情况下缩放到了最大限制,我假设比例刚刚超过2.5倍,并且它不会对缩放做出响应

我的下一次尝试是:

protected function onZoom(e:TransformGestureEvent, img:Image):void
            {
                while(img.scaleX <= 2.5 && img.scaleX >= .8)
                {
                    DynamicRegistration.scale(img, new Point(e.localX, e.localY), img.scaleX*e.scaleX, img.scaleY*e.scaleX);
                    if(img.scaleX > 2.5)
                    {
                        img.scaleX = 2.5;
                        img.scaleY = 2.5;
                    }
                    else if(img.scaleX < .8)
                    {
                        img.scaleX = .8;
                        img.scaleY = .8;
                    }
                }
            }
缩放时受保护的函数(e:TransformGestureEvent,img:Image):无效 { 而(img.scaleX=.8) { DynamicRegistration.scale(img,新点(e.localX,e.localY),img.scaleX*e.scaleX,img.scaleY*e.scaleX); 如果(img.scaleX>2.5) { img.scaleX=2.5; img.scaleY=2.5; } 否则如果(img.scaleX<.8) { img.scaleX=.8; img.scaleY=.8; } } } 如果超出限制,尝试将大小重置为限制范围内,但这并不是唯一的失败,但图像不起任何作用,应用程序锁定并导致强制关闭

有人知道如何做到这一点吗?我喜欢这种zoom方法,因为它简单,但它可以在实例化缩放边界时使用吗