NowWebViewController クラス - iOS

  • リリースバージョン: Zurich
  • 更新日 2025年07月31日
  • 所要時間:2分
  • NowWebViewController クラスは、Web ビューアを管理できるようにする関数を提供します。

    Web ページのロードフロー

    NowWebViewController:loadPage()

    要求が認証されると、 makeWebViewController() メソッドを使用してインスタンス化中に提供された初期 URL のロードを開始します。

    要求が認証に失敗すると、オブジェクトをインスタンス化するときに渡されたデリゲートでメソッド nowWebViewController(_:didFailNavigationWith:) が呼び出されます。

    表 : 1. パラメーター
    名前 タイプ 説明
    なし
    表 : 2. 返される内容
    タイプ 説明
    なし

    次のコード例は、この関数を呼び出す方法を示しています。

    private func openScreen(_ screen: ArticleListViewModel.Screen) {
      switch screen {
      case .articleDetail(let sysId):
        guard let url = URL(string: "/mesp?id=me_kb_view&sys_kb_id=\(sysId)"), let webViewController = webViewController(for: url) else {
          debugPrint("Could not create web view")
          return
        }
        webViewController.loadPage()
        navigationController?.pushViewController(webViewController, animated: true)
      }
    }

    NowWebViewController:updateTheme(themeColors: NowWebThemeable)

    NowWebView テーマを指定された UI テーマで更新します。この関数を使用して、 makeWebViewController() 関数を使用して最初に設定した Web UI テーマを更新した後 (テーマを明から暗に変更する場合など) に使用します。

    表 : 3. パラメーター
    名前 タイプ 説明
    themeColor NowWebテーマ可能 Web UI を更新するテーマ。
    表 : 4. 戻り値
    タイプ 説明
    なし

    次のコード例は、 makeWebViewController() 関数を使用して実装された明るい UI テーマを、 updateTheme() 関数を使用して暗い UI テーマに更新する方法を示しています。

    func nowWebViewController(_ nowWebViewController: NowWebViewController, systemThemeDidChange traitCollection: UITraitCollection) {
      // The systemThemeDidChange delegate method can be used to call updateTheme() to apply theme changes when the system theme changes.
      nowWebViewController.updateTheme(themeColors: traitCollection.userInterfaceStyle == .dark ? DarkNowWebTheme() : LightNowWebTheme())
    }