【问题标题】:Animate exit of UIViewUIView 的动画退出
【发布时间】:2013-11-17 01:10:26
【问题描述】:

我想在 UIView 关闭时制作动画。我尝试阅读以下内容:

http://felipe.sabino.me/ios/2012/05/10/ios-uiview-transition-effects/

iPhone UIView Animation Best Practice

iOS UIView Animation CATransform3DMakeRotation confusion

但是,我想让它从屏幕一侧过渡,就像 Google Chrome 应用程序中的图像一样。

是否为此设置了另一个动画?我找不到它...我假设它与animateWithDurationCATransform 有关...有人可以为此指出正确的方向吗?

[编辑]

我使用以下帖子作为答案以及这篇帖子:

Setting a rotation transformation to a UIView or its layer doesn't seem to work?

我可以添加多个动画,如下所示:

[UIView animateWithDuration: .2
                      delay: 0
                    options: (UIViewAnimationOptionCurveLinear | UIViewAnimationOptionAllowUserInteraction)
                 animations:^{self.view.center = CGPointMake(self.view.frame.origin.x * 3, self.view.frame.origin.y * 2), self.view.transform = CGAffineTransformMakeRotation(M_PI_4/2);}
                 completion:nil];

以前我不知道您可以如此轻松地添加多个动画。这将旋转和线性运动加在一起。

【问题讨论】:

    标签: ios uiviewanimation


    【解决方案1】:

    为您的视图设置动画,使其移出屏幕/缩小/展开/淡入淡出,然后在动画结束时进行实际移除。

    您可以通过在 beginAnimations/commitAnimations 块之间更改视图的属性(位置/大小/偏移)来做到这一点。 UIKit 将在指定的时间内为这些属性设置动画。

    例如类似的东西;

    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.30f];
    view.transform = 
      CGAffineTransformMakeTranslation(
        view.frame.origin.x, 
        480.0f + (view.frame.size.height/2)  // move the whole view offscreen
      );
    background.alpha = 0; // also fade to transparent
    [UIView commitAnimations];
    

    然后您可以在动画结束通知中移除视图。

    【讨论】:

      【解决方案2】:

      我从未在 iOS 上运行过 Chrome,所以我不得不尝试猜测您的屏幕截图显示的是什么。

      在缩小并转向一侧时动画是否会离开屏幕?

      您的意思是要为 UIViewController 或 UIView 设置动画?你要关闭视图控制器吗?

      如果它是一个视图控制器,你是如何管理你的视图控制器的?您是在使用导航控制器,还是在展示一组模式视图控制器或其他方法?

      【讨论】:

      • 我只有一个基本的UIView。动画只是从右下角滑出屏幕。
      • 这是您的应用当前所做的,还是您想要的?从右下角滑下来是什么意思?
      • 现在我的UIView 从屏幕底部滑下。我希望它像上面的屏幕一样旋转一点,然后滑出屏幕的右下角并消失
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-12
      相关资源
      最近更新 更多