Protocolo NowWebViewControllerDelegate - iOS

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 2 min. de leitura
  • . NowWebViewControllerDelegate o protocolo fornece retornos de chamada para notificação de problemas no NowWebViewController processamento, como quando um fluxo termina ou uma navegação falha.

    NowWebViewControllerDelegate - nowWebViewController(_ nowWebViewController: NowWebViewController, didEndFlow flowName: Cadeia de caracteres)

    Retorno de chamada que notifica a aplicação host de que o fluxo Cabrillo (web móvel) especificado foi encerrado.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    NowWebViewController NowWebViewController Instância do NowWebViewController em que o fluxo terminou.
    DidEndFlow flowName Cadeia de caracteres Nome do fluxo Cabrillo que terminou
    Tabela 2. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    func nowWebViewController(_ nowWebViewController: NowWebViewController, didEndFlow flowName: String) {
      debugPrint("ended flow named: \(flowName)")
    }

    NowWebViewControllerDelegate - nowWebViewController(_ nowWebViewController: NowWebViewController, didFailNavigationWith error: Swift.Error)

    Retorno de chamada que notifica a aplicação host de que a navegação da exibição da web falhou.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    NowWebViewController NowWebViewController Instância do NowWebViewController na qual a navegação falhou.
    DidFailNavigationCom erro Swift.Erro Erro gerado a partir da falha de navegação.
    Tabela 4. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    func nowWebViewController(_ nowWebViewController: NowWebViewController, didFailNavigationWith error: Error) {
      debugPrint("NowWebViewController encountered a navigation error: \(error.localizedDescription)")
    }

    NowWebViewControllerDelegate - nowWebViewController(_ nowWebViewController: NowWebViewController, didReceive unsupportedUrl: URL)

    Retorno de chamada que notifica a aplicação host de que a exibição da web tentou carregar um URL incompatível.

    Um URL incompatível pode ser um para um diferente ServiceNow Instância ou um URL absoluto com um esquema inválido.
    Nota:
    Os esquemas válidos são http e https.
    Tabela 5. Parâmetros
    Nome Tipo Descrição
    NowWebViewController NowWebViewController Instância do NowWebViewController usada ao tentar carregar o URL incompatível.
    DidReceive unsupportedUrl URL URL inválida que está tentando ser carregada.
    Tabela 6. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    func nowWebViewController(_ nowWebViewController: NowWebViewController, didReceive unsupportedUrl: URL) {
      debugPrint("nowWebViewController:receivedUnsupportedUrl: \(unsupportedUrl.absoluteString)")
    }

    NowWebViewControllerDelegate - nowWebViewControllerDidRequestDismissal(_ nowWebViewController: NowWebViewController)

    Retorno de chamada que notifica a aplicação host de que, durante uma tentativa de navegação anterior, a pilha foi esgotada. A aplicação host pode decidir se deseja descartar a instância NowWebViewController.

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    NowWebViewController NowWebViewController Instância do NowWebViewController na qual a navegação de volta foi tentada.
    Tabela 8. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    func nowWebViewControllerDidRequestDismissal(_ nowWebViewController: NowWebViewController) {
      navigationController?.popViewController(animated: true)
    }

    NowWebViewControllerDelegate - nowWebViewController(_ nowWebViewController: NowWebViewController, systemThemeDidChange traitCollection: UITraitCollection)

    Retorno de chamada que notifica a aplicação host de que o tema da IU da Web do sistema foi alterado.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    NowWebViewController NowWebViewController Instância do NowWebViewController na qual o tema da IU da web foi alterado.
    TraitCollection UITraitCollection Objeto UITraitCollection que contém o novo tema.
    Tabela 10. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como substituir o. SystemThemeDidChange() função delegada para chamar UpdateTheme() função para aplicar mudanças de tema quando o tema do sistema muda.

    func nowWebViewController(_ nowWebViewController: NowWebViewController, systemThemeDidChange traitCollection: UITraitCollection) {
    
      /// Called when the system changes between dark and light mode
    
        /// You can call the corresponding updateTheme() method here to change the UI theme based on System Theme
        nowWebViewController.updateTheme(themeColors: traitCollection.userInterfaceStyle == .dark ? DarkNowWebTheme() : LightNowWebTheme())
          print(“System Theme Did Change)
    }