SFSafariViewController
is not meant for customizations. Even Apple documentation says to use WKWebView
if you want to customise the look and feel of safari view controller.
From Apple documentation
Choosing the Best Web Viewing Class
If your app lets users view websites from anywhere on the Internet,
use the SFSafariViewController class. If your app customizes,
interacts with, or controls the display of web content, use the
WKWebView class. When you adopt SFSafariViewController and a user
presses a link to peek at and then pop to the link’s destination, the
user views web content from within your app. Tapping Done, the user
returns to the view controller that was displayed before the web
content was loaded. When you instead use the WKWebView class, Peek and
Pop sends the user to Safari by default.
On the other hand, SFSafariViewController
does provide some kind of UI customization. You can only change the preferredBarTintColor
and prefererredControlTintColor
. iOS 11 has new option to set initial configuration by using @NSCopying var configuration: SFSafariViewController.Configuration { get }
but sadly that will not help you either