【问题标题】:How to preload UIWebView in iOS?如何在 iOS 中预加载 UIWebView?
【发布时间】:2019-05-03 11:00:15
【问题描述】:

我有 SplashScreenController,它有进度条。我想在进度条结束时预加载网页视图。我也有 WebViewController 我在其中加载 Web 视图。

据我所知,我必须在 SplashScreenController 中加载 Web 视图。如何在 SplashScreenController 中获取 WebViewController 视图

【问题讨论】:

    标签: ios objective-c xcode uiwebview


    【解决方案1】:

    你不能那样做。基本上,您需要做的是首先加载 WebViewController,同时(例如在 viewDidload 上)将 SplashScreenController 作为 Modal 加载。这样您就可以从 WebViewController 向 SplashScreenController 发送消息(即,加载进度等)。

    【讨论】:

      【解决方案2】:

      根据我的经验,UIWebView 不会开始加载内容,除非它位于视图层次结构中。这并不意味着它必须是可见的,我通常将它们从屏幕上移开并仅在加载完成时显示它们。只要加载了该 VC,您就可以将 UIWebView 放在不同的 UIViewController 中。启动画面可以保持在顶部并连接到与 web 视图相同的 VC 或不同的 VC(我建议第二种方法)

      【讨论】:

        【解决方案3】:

        以 webviewcontroller 为起点。开始在上面下载网页内容。从上面,在整个屏幕上放置一个视图,带有一个进度条。完成进度条后,只需删除子视图。将保持 webviewcontroller 加载内容。使用 Splash screen 你不能做任何事情,因为只要它存在,在 AppDlegate 中没有调用 didFindishLaunchingWithOptions 方法并且应用程序不存在

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-08-19
          • 1970-01-01
          • 1970-01-01
          • 2013-01-15
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多