iOS Implémenter SFSafariViewControllerDelegate


Exemple

Vous devez implémenter SFSafariViewControllerDelegate afin que votre classe soit avertie lorsque l'utilisateur appuie sur le bouton Done de SafariViewController et que vous pouvez également le supprimer.

D'abord, déclarez votre classe pour implémenter le protocole.

class MyClass: SFSafariViewControllerDelegate {

}

Implémentez la méthode des délégués à notifier en cas de licenciement.

func safariViewControllerDidFinish(controller: SFSafariViewController) {
    // Dismiss the SafariViewController when done
    controller.dismissViewControllerAnimated(true, completion: nil)
}

N'oubliez pas de définir votre classe en tant que délégué SafariViewController.

let safariVC = SFSafariViewController(URL: yourURL)
safariVC.delegate = self

Les méthodes de délégation supplémentaires que vous pouvez implémenter sont les suivantes:

// Called when the initial URL load is complete.
safariViewController(_ controller: SFSafariViewController, didCompleteInitialLoad didLoadSuccessfully: Bool) { }

// Called when the user taps an Action button.
safariViewController(_ controller: SFSafariViewController, activityItemsFor URL: URL, title: String?) -> [UIActivity] { }