0

我在 Adob​​e Flex (4.6) 中开发了一个移动应用程序,它包括使用捏拉缩放功能来放大图片,以便更轻松地阅读图片中的文字。在以前的 android 版本中(2.1 到 2.3.3 和 2.3.4,如果你正在运行 cyanogenmod),捏到缩放可以正常工作。但是,如果应用程序在 ICS (Android 4.x) 设备上运行,轴似乎可以单独处理图片的放大。即,当您将手指水平分开时,图像会变得很宽,但垂直尺寸保持不变,反之亦然。

首先,有人知道为什么会这样吗?

其次,有没有人知道如何修复它以使其像以前一样工作?

我将更新以包括屏幕截图。

更新:我已经确认这也是 Honeycomb 的一个问题。即,3.x OS 的行为与 4.x ICS 相同。

Sense,运行最新的 HTC 更新: 原始图像捏拉缩放捏拉缩小

ICS,在 AOKP 上,但已验证这也是标准 ICS 发行版的问题: ICS 捏到缩放拉伸可以任意拉伸...有点迷失方向

4

1 回答 1

0

解决了这个问题。代码以前是:

        protected function onZoom(e:TransformGestureEvent, img:Image):void
        {
                DynamicRegistration.scale(img, new Point(e.localX, e.localY), img.scaleX*e.scaleX, img.scaleY*e.scaleY);
        }

将最终更改e.scaleYe.scaleX. 这使它仅基于缩放的一部分(在 x 方向上)进行缩放,并相应地缩放 X 和 Y。不完全完美,但在实践中效果很好。

最终代码是这样的:

        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);
        }
于 2012-06-01T14:43:27.863 回答