Suche…


Implementieren Sie SFSafariViewControllerDelegate

Sie sollten SFSafariViewControllerDelegate so implementieren, dass Ihre Klasse benachrichtigt wird, wenn der Benutzer auf die Schaltfläche "Fertig" des SafariViewControllers klickt.

Erklären Sie zuerst Ihre Klasse, um das Protokoll zu implementieren.

class MyClass: SFSafariViewControllerDelegate {

}

Implementieren Sie die Delegierungsmethode, die bei der Kündigung zu benachrichtigen ist.

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

Vergessen Sie nicht, Ihre Klasse als Delegat des SafariViewControllers festzulegen.

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

Zusätzliche Delegierungsmethoden, die Sie implementieren können, sind:

// 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] { }

Elemente zur Safari-Leseliste hinzufügen

Sie können der addItem eines Benutzers in Safari Elemente hinzufügen, indem Sie die addItem Methode für das SSReadingList Singleton SSReadingList .

let readingList = SSReadingList.default()
readingList?.addItem(with: yourURL, title: "optional title", previewText: "optional preview text")

Die Standard-Leseliste kann nil wenn der Zugriff auf die Leseliste nicht zulässig ist.

Zusätzlich können Sie prüfen, ob die Leseliste eine URL supportsURL indem Sie supportURL aufrufen.

SSReadingList.default().supportsURL(URL(string: "https://example.com")!)

Dies gibt entweder true oder false zeigt an, ob die angegebene URL von Safari Reading List unterstützt wird. Verwenden Sie dies beispielsweise, um zu bestimmen, ob eine Schaltfläche angezeigt werden soll, um der Leseliste eine URL hinzuzufügen.

Öffnen Sie eine URL mit SafariViewController

Vergessen Sie nicht, zuerst das notwendige Framework zu importieren.

import SafariServices
//Objective-C
@import SafariServices;

SafariViewController eine SafariViewController Instanz.

let safariVC = SFSafariViewController(URL: URL(string: "your_url")!)
//Objective-C
@import SafariServices;
NSURL *URL = [NSURL URLWithString:[NSString stringWithFormat:@"http://www.google.com"]];
SFSafariViewController *sfvc = [[SFSafariViewController alloc] initWithURL:URL];

Optional können Sie SafariViewController auch anweisen, nach dem Laden den Lesemodus zu aktivieren.

let safariVC = SFSafariViewController(URL: URL(string: "your_url")!, entersReaderIfAvailable: true)
//Objective-C
NSURL *URL = [NSURL URLWithString:[NSString stringWithFormat:@"http://www.google.com"]];
SFSafariViewController *sfvc = [[SFSafariViewController alloc] initWithURL:URL entersReaderIfAvailable:YES];

Präsentieren Sie den View Controller.

present(safariVC, animated: true, completion: nil)
//Objective-C
[self presentViewController:sfvc animated:YES completion:nil];


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow