在 ViewController 中隐藏启动画面

Posted

技术标签:

【中文标题】在 ViewController 中隐藏启动画面【英文标题】:Hide splash screen in ViewController 【发布时间】:2015-09-23 18:13:42 【问题描述】:

我有一个非常简单的应用程序,它有一个具有 UIWebView 的视图。标题如下所示:

@interface ViewController : UIViewController<UIAlertViewDelegate, UIWebViewDelegate>

@property (nonatomic, weak) IBOutlet UIWebView *webView;

一切运行良好,但正如我所料,在应用启动图像消失和 WebView 内容加载之间当然存在延迟。为了使它看起来更好一点,我决定在视图最初加载时隐藏 WebView,并且仅在 WebView 本身加载时才显示它,所以在我的控制器中:

- (void) viewDidLoad 

    [super viewDidLoad];
    self.webView.hidden = YES;


- (void)webViewDidFinishLoad:(UIWebView *)webView

    self.webView.hidden = NO;

这只会显示视图背景,直到 WebView 加载,但这仍可能需要 1-3 秒。

我现在正在考虑的一个解决方案是继续显示应用启动器图像,直到 WebView 加载。当然,我需要处理错误情况等,但我认为这可能会比仅仅看到几秒钟的背景颜色带来更好的体验。谷歌搜索我没有看到这是否可能,但我觉得它应该是。

谁能给我一些见解?是否可以将启动图像配置为一直保留到您以编程方式隐藏它?这甚至是一种可靠的方法吗?任何意见,将不胜感激。非常感谢!

【问题讨论】:

您需要自己明确显示相应的启动图像。 顺便说一句 - 请参阅 ***.com/questions/11023198/…,因为它几乎与您想要的相同。 【参考方案1】:

是否可以将启动图像配置为一直保留到您以编程方式隐藏它?

我不知道,但您可以将启动画面(作为 UIView/UIImageView)添加到 webview 前面的视图控制器中,并在加载 web 内容时隐藏它。

默认闪屏和你的闪屏之间的过渡不应该是可见的。

【讨论】:

以上是关于在 ViewController 中隐藏启动画面的主要内容,如果未能解决你的问题,请参考以下文章

我的启动画面结束得太早了。如何在 Android 上手动隐藏启动画面?

在 GRUB2 中隐藏“正在加载初始 ramdisk ...”启动画面

启动画面应用程序并隐藏操作栏

使用 Phonegap Build 自动隐藏启动画面

加载phonegap网站后在android上隐藏启动画面

iOS上的Phonegap 3.1手动隐藏启动画面