如何在 iOS 中更改 Launch 图像的属性?
Posted
技术标签:
【中文标题】如何在 iOS 中更改 Launch 图像的属性?【英文标题】:How to change the properties of Launch image in iOS? 【发布时间】:2014-06-13 07:01:26 【问题描述】:我有一个 iPhone 应用程序,我在其中使用图像 Default-568h@2x.png 作为 lauchimage 或启动画面。
同时,我将相同的图像设置为窗口的图像视图,以在初始屏幕上显示一些动画。我的图像的不透明度为 90%。
这里的问题是在我们自己的图像视图进入窗口之前,启动图像以 100% 的不透明度显示,然后我们自己的图像视图出现了实际的 90%。因此,两幅图像在几分之一秒内就有了显着的过渡。这种情况不太好,我们可以避免这种情况吗,为什么我的启动图像一开始是完全不透明的?有人可以帮我解决这个问题吗?
【问题讨论】:
【参考方案1】:ios 应用程序总是在图像设置为完全不透明的情况下启动 - 您无法更改它。如果您想将初始屏幕与启动图像相匹配,您有两种选择:
1) 使图像具有完全不透明度;然后在您的 applicationDidFinishLaunchingWithOptions:
方法中,您可以执行以下操作:
[UIView animateWithDuration:0.1 animations:^
self.imageView.alpha = 0.9;
];
因此,一旦您的应用完成启动,您的图像将褪色至 90% 的不透明度。
2) 确定应用启动后图像下方的内容,然后用它预先组合启动图像;使它看起来一样。为此,您可以启动您的应用,等待当前启动图像消失,然后截取正在运行的应用的屏幕截图并将该屏幕截图用作您的新启动图像。
【讨论】:
所以效果是一样的,是吗?第一个完全不透明度的图像,然后是 90%。现在也发生同样的情况 这里的问题不在于图像视图的不透明度,为什么我的原始图像没有在启动时显示,我的图像只有 90% 的不透明度。 您的启动图像的不透明度将被忽略。你无法改变它;你只需要解决它。 我添加了另一个选项 - 在启动图像中伪装透明度。【参考方案2】:将图像名称更改为其他名称,例如 Splash.png
现在编译器找不到您的应用程序的任何默认启动图像。
然后它会直接尝试加载你的窗口。因此,使用所需的动画将您的图像/视图加载到窗口上。
或
使用不透明度较低的 Default-568h 图像(使用 Photoshop 类型的工具),假设为 90%。现在再添加一张图片,splash.png,不透明度为 100%。因此,当您的代码运行时,它会首先将 splash.png 转换为 90% 的不透明度,然后隐含您的动画代码。
因此,默认图像和启动图像之间不会有任何滞后,两者看起来都一样。
【讨论】:
以上是关于如何在 iOS 中更改 Launch 图像的属性?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iOS 7.1 中更改 TabBar 上的图像和标签颜色?