首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >禁用UISnapBehavior上的旋转吗?

禁用UISnapBehavior上的旋转吗?
EN

Stack Overflow用户
提问于 2013-10-02 15:51:48
回答 5查看 3.4K关注 0票数 9

我喜欢这个UISnapBehavior片段,但我真的想用它向滑行--只有一个方向--只有带有轻微振荡的

有关闭这种行为的旋转的方法吗?,因为SpriteKit具有allowsRotation属性,可以很容易地关闭。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-10-08 00:44:02

可以通过将UIDynamicItemBehavior添加到UIDynamicAnimator中,然后将其allowsRotation属性设置为NO,如下所示:

代码语言:javascript
复制
UIDynamicItemBehavior * dynamicItem = [[UIDynamicItemBehavior alloc] initWithItems:@[self.viewToSnap]];
dynamicItem.allowsRotation = NO;
[self.animator addBehavior:dynamicItem];
票数 28
EN

Stack Overflow用户

发布于 2013-10-04 19:45:38

这里有一个更好的答案: UISnapBehavior有一个action属性,它需要一个块,它在每一步都会被调用。像这样设置这个街区..。

代码语言:javascript
复制
snapBehavior.action = ^{ view.transform = CGAffineTransformIdentity; };

..。使旋转无效而不产生任何其他副作用。

票数 11
EN

Stack Overflow用户

发布于 2013-10-03 13:42:47

为此,不需要使用UIKitDynamics

只需简单地使用:

代码语言:javascript
复制
[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];
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19141191

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档