我撞我就在这里头撞墙,由于这个问题:iphone - 使CGAffineTransform永久
当我创建一个UIImageView这种观点具有一定的方向和大小。让我们称这个状态为“A”。
该视图响应点击。它可以在屏幕上拖动。
在代码中的某个位置,我将CGAffineTransform应用于该视图。如果仿制品是规模,旋转,翻译或全部组合,则无关紧要。如果变换是绝对的或相对的,也无关紧要。更不用说设备可以改变其方向,并且视图被自动旋转到正确的方向(我们可以说是一种应用于视图的旋转或变换)。
问题是:当我触摸该对象或试图为其透明度或任何其他参数设置动画时,它会“记住”状态“A”,并从该状态执行所有动画,而不是从当前状态执行动画。如果我只是触摸视图,它会立即返回状态“A”。代码本身并没有这样做。这很烦人。如何让视图将其当前的转换状态假定为重置或初始状态?换句话说,我如何让视图忘记过去的转换或状态?
我知道的唯一方法是重新创建视图,但这是一个荒谬的做法。
有没有什么方法可以使我的工作如前所述?
感谢
“我将CGAffineTransform应用于视图”< - 请在代码中显示这意味着什么。 – Ken 2010-04-24 04:40:32
请显示代码.... – 2010-04-24 06:24:12
没有更多信息,我会怀疑您正在操作视图的COPY,或将转换应用于COPY(或新对象)。检查指向您的“A”对象的指针的内存地址,并将其与转换的对象以及拖动的对象进行比较。他们应该都是一样的。 – gnasher 2010-04-24 09:31:00