动画启动屏幕缩放
Posted
技术标签:
【中文标题】动画启动屏幕缩放【英文标题】:Animating launch screen zoom 【发布时间】:2020-05-12 10:36:14 【问题描述】:1:
我正在尝试为 UIImageView
的缩小/大小更改设置动画。下面是我希望启动屏幕的外观,然后一旦加载到我的HomeViewController
上。
2:
因为(目前)我正在 HomeViewController
上制作动画我知道这不是正确的做法,所以我的 VC
上的按钮立即显示为动画正在发生
3:
最后,这几乎是我想要的样子,但为了实现这一点,我放置了一个 UIView
,它覆盖了按钮而不是徽标,并使其动画淡化 就像按钮一样正在淡出。
那么在加载我的HomeViewController
之前,我将如何在启动屏幕上制作初始动画?我似乎无法将我的UIImageView
添加到我的AppDelegate.swift
以在那里制作动画,非常感谢!
代码:(在viewDidLoad
中的HomeViewController
)
let orginalY = self.imageView.center.y
UIView.animate(withDuration: 1.0, animations: () -> Void in
self.imageView?.transform = CGAffineTransform(scaleX: 0.5, y: 0.5)
self.imageView.center.y = orginalY - 100
, completion: nil)
UIView.animate(withDuration: 1.2)
self.hidingView.alpha = 0
【问题讨论】:
【参考方案1】:您不能在启动屏幕故事板上制作自定义动画。在显示HomeViewController
之前,您必须使用SplashViewController
,并在动画的完成块中全屏显示HomeViewController
。
【讨论】:
这很有意义,我一直想弄清楚为什么我找不到任何关于它的东西,谢谢!所以我将SplashViewController
设为我的初始ViewController
,然后呈现HomeViewController
?【参考方案2】:
您不能为 LaunchScreen 设置动画。您看到动画的大多数应用程序实际上都有一个中间控制器/屏幕。 Flow 应该是这样的。
-
启动屏幕(您不能在此处执行任何操作。操作系统将设置您的应用程序)
AnimationViewController(在这里您将进行一些初始设置和动画)
HomeViewController(您的应用程序的其余流程)。
【讨论】:
以上是关于动画启动屏幕缩放的主要内容,如果未能解决你的问题,请参考以下文章