UIKitdynamic与现有的仿射变换

我有一个观点,有一些规模的转变。 当我在其上应用一些UIKit Dynamics时,它将它们清零。 /:如何在视图中保留现有的转换? :P

谢谢。 🙂

看看UIDynamicAnimator的updateItemUsingCurrentState

dynamicanimation师会自动读取添加到其中的每个dynamic项目的初始状态(位置和旋转),然后负责更新项目的状态。 如果您在将dynamic项目添加到dynamicanimation之后主动更改dynamic项目的状态 ,请调用此方法以请求animation师读取并合并新状态。

因此,无论何时,当您将转换的项目添加到animation制作器后,您都可以更改转换,只需在之后调用updateItemUsingCurrentState

 id <UIDynamicItem> dynamicItem; // whatever your item is, probably a UIView UIGravityBehavior *behavior = [[UIGravityBehavior alloc] initWithItems:@[dynamicItem]]; UIDynamicAnimator *animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view]; // or however you're getting your animator [animator addBehavior:behavior]; view.transform = CGAffineTransformMakeScale(1.5, 1.5); [animator updateItemUsingCurrentState:view]; 

这里是一个教程, http://www.raywenderlich.com/50197/uikit-dynamics-tutorial 。 作者说,在dynamic的控制下,我们不能使用变换来调整对象。 我希望这篇文章可以帮助你。