Ger*_*eri 9 animation uikit ios7 uikit-dynamics
我喜欢那个UISnapBehavior片段,但是我真的想用它来向一个方向滑动,只是稍微摆动一下.
有没有办法关闭这种行为的旋转?
因为SpriteKit有allowsRotation可以轻易关闭的财产.
Alf*_*sen 27
您可以通过添加一个做到这一点UIDynamicItemBehavior给你UIDynamicAnimator,然后设置其allowsRotation属性NO,如下所示:
UIDynamicItemBehavior * dynamicItem = [[UIDynamicItemBehavior alloc] initWithItems:@[self.viewToSnap]];
dynamicItem.allowsRotation = NO;
[self.animator addBehavior:dynamicItem];
Run Code Online (Sandbox Code Playgroud)
Ger*_*eri 10
不需要UIKitDynamics这个.
只需简单地使用:
[UIView animateWithDuration:0.5
delay:0.0
usingSpringWithDamping:0.65
initialSpringVelocity:0.5
options:0
animations:^
{
self.transform = (self.expanded) ? self.openedTransition : self.closedTransition;
}
completion:nil];
Run Code Online (Sandbox Code Playgroud)
Dan*_*nor 10
这是一个更好的答案:UISnapBehavior有一个action属性,它接受一个在每一步都被调用的块.像这样设置这个块......
snapBehavior.action = ^{ view.transform = CGAffineTransformIdentity; };
Run Code Online (Sandbox Code Playgroud)
...使旋转变为无效,没有任何其他副作用.
| 归档时间: |
|
| 查看次数: |
3172 次 |
| 最近记录: |