2016-08-06 4 views
3

In einer App, die auf iOS 8.0 und höher abzielt, möchte ich einen SFSafariViewController auf iOS 9.0 und höher und einen Fallback WebView-Controller auf älteren Geräten verwenden.Wie wird ein Protokoll basierend auf der Betriebssystemversion erstellt?

Ich brauche diese Ansicht-Controller auf einem Protokoll protocol SomeWebViewProtocol

ich es anpassen kann für den Rückfall WebView-Controller (extension FallBackViewController: SomeWebViewProtocol { ... }) direkt tun, aber wie mache ich es für die SFSafariViewController? if #available(iOS 9, *) { ... } ist keine Option, da Erweiterungen ausreichen

Antwort

1

Das folgende Beispiel soll auf Dateiebene sein müssen: an die Spitze Ihrer Erklärung

hinzufügen
struct Foo 
{ 

} 

@available(iOS 9, *) 
protocol Bar 
{ 

} 

@available(iOS 9, *) 
extension Foo: Bar 
{ 

} 

einfach @available(iOS <version>, *).