Zoeken…


Implementeer SFSafariViewControllerDelegate

U moet SFSafariViewControllerDelegate implementeren zodat uw klas op de hoogte wordt gesteld wanneer de gebruiker op de knop Gereed op SafariViewController drukt en u deze ook kunt afwijzen.

Verklaar eerst uw klas om het protocol te implementeren.

class MyClass: SFSafariViewControllerDelegate {

}

Implementeer de gedelegeerde methode die moet worden aangemeld bij ontslag.

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

Vergeet niet je klas in te stellen als de afgevaardigde van SafariViewController.

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

Extra methoden voor deelnemers die u kunt implementeren zijn:

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

Items toevoegen aan Safari-leeslijst

U kunt items toevoegen aan de addItem van een gebruiker in Safari door de methode addItem op te roepen in de SSReadingList singleton.

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

De standaard Leeslijst kan nil als toegang tot de Leeslijst niet is toegestaan.

Bovendien kunt u controleren of de Leeslijst een URL supportsURL door supportURL aan te roepen.

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

Dit geeft true of false wat aangeeft of de gegeven URL wordt ondersteund door Safari-leeslijst. Gebruik dit bijvoorbeeld om te bepalen of een knop moet worden weergegeven om een URL aan de leeslijst toe te voegen.

Open een URL met SafariViewController

Vergeet niet om eerst het benodigde framework te importeren.

import SafariServices
//Objective-C
@import SafariServices;

Instantie maken met een exemplaar van SafariViewController .

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];

Optioneel kunt u SafariViewController ook vertellen om, indien mogelijk, de leesmodus te openen nadat het laden is voltooid.

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];

Presenteer de weergavecontroller.

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
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow