首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用UIView水平地使用UIDynamicAnimator动画

使用UIView水平地使用UIDynamicAnimator动画
EN

Stack Overflow用户
提问于 2014-04-17 05:36:45
回答 1查看 1.6K关注 0票数 2

我已经看过这些文件了,我很不好意思地说我很困惑。

场景

我有一个UIView,它的作用就像一个用于3 UIButtons的容器。这个容器最初是边界{0, 0, 35, 35},每个按钮都有相同的协调(与alpha 0)。在用户的特定操作中,容器将边界更改为{0, 0, 100, 35},并将按钮分别动画为x源5、35和65,并使用alpha 1,使它们分布在调整大小的容器中。我将此称为容器的扩展状态。用户的相同操作,将其切换回原来的收缩状态。

目标

我目前正在使用[UIView animateWithDuration:]块来完成这个任务,但是我希望使用UIDynamicAnimator来添加一个弹跳效果,这样,当切换到扩展状态时,容器会调整大小,进行反弹(调整大小,然后返回到目标边界),并且按钮也会弹出(移动一点,然后反弹到目标边界)。

混乱

UIDynamicAnimatorUIDynamicBehaviorUIAttachmentBehaviorUIDynamicItem.....all --这些都导致我对UIKitDynamic的理解溢出。我想我应该使用UISnapBehavior,但是我不知道该怎么做。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-29 06:01:32

事实证明,不需要使用UIDynamicAnimator和所有其他动态动画。我所需要的只是animateWithDuration:delay:usingSpringWithDamping: initialSpringVelocity: options: animations: completion:类方法。只需使用它来代替任何简单的animateWithDuration:方法,它就会产生我想要达到的精确行为。

样本代码:

代码语言:javascript
复制
    [UIView animateWithDuration:0.4
                          delay:0
         usingSpringWithDamping:0.5
          initialSpringVelocity:0.5
                        options:0
                     animations:^{

                         //Animation code

                     } completion:nil];
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23125373

复制
相关文章

相似问题

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