ios - 在不同 VC 之间移动时管理 UIView 动画

标签 ios swift uiview uiviewcontroller uiviewanimation

作为初学者,我在一些基本的东西上遇到了困难。

所以,我的主 UIViewController 中的 View 有一个动画,但是当我移动到另一个 UIViewController 然后返回主视图时动画停止。

嗯,我的动画在 viewDidLoad() 中,已经尝试从 viewWillAppear()viewDidAppear() 调用它,但可能这不是解决方案。
不幸的是我不知道在哪里回调动画,有人遇到过这个小问题吗?

如果可以提供帮助,这就是我正在使用的代码:

UIView.animate(withDuration: 1.0, delay:0, options: [.repeat, .autoreverse, .allowUserInteraction], animations: {
        self.viewAnima.transform = CGAffineTransform(scaleX: 1.2, y: 1.2)
    }, completion: nil)  

最佳答案

ViewDidAppear 不是触发动画的正确位置。相反

例如。有一个代表。 在第一个 View Controller 中实现委托(delegate)。当关闭第二个 viewController 时,调用委托(delegate)。并将动画 block 放入其中并以 0.2 秒延迟触发动画。这给人的感觉就像是关闭 View 并开始动画。

//将此代码放入委托(delegate)函数中。

DispatchQueue.main.async(.now()+0.2) {
        UIView.animate(withDuration: 2.0, animations: { () -> Void in
            // Do you animation here
           })
        }

关于ios - 在不同 VC 之间移动时管理 UIView 动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54504256/

相关文章:

iphone - 如何将 UIView 始终放在顶部屏幕上?

ios - 通过 Firebase 函数发送的 Swift 中的加密推送通知

ios - 如何从 NSArray 中删除具有相同值的重复对象

ios - API 未返回包含原始数据的有效响应。但在 postman 身上工作得很好

IOS-Swift, CarbonKit 被打回来时,Icons 还在pager 停留了一会儿,如何让它们立即消失

ios - 如何将值从 UIView 的子类传递到 UIViewController 类

swift - 如何将数据从 UIVIEW 传递到其父 View Controller

ios - Obj-C : How to fix constraint for PageViewController, PageController 和 2 个按钮

ios - 如何在 App Store 中更改 iOS 应用程序的类别

ios - 将 UIImagePickerController 与 UICollectionView 一起使用