iOS 9 - скрыть панель инструментов внизу веб-страницы, загруженной через SFSafariViewController

Я пытаюсь скрыть панель инструментов навигации (перейти назад и вперед, открыть в сафари...), которая появляется внизу страницы, которая загружает URL-адрес с помощью SFSafariViewController. Я попытался установить следующее свойство в контроллере навигации, но это не сработало/ [_safariViewController.navigationController setToolbarHidden:YES]; Я могу скрыть это при использовании контроллера представления, который использует класс UIWebView. Какие-либо предложения?

Спасибо


person user4321945    schedule 08.12.2015    source источник


Ответы (2)


Что вы можете сделать, так это настроить рамку SafariViewController.

let safari = SFSafariViewController(url: URL(string: "https://wwww.google.co.nz")!)
self.present(safari, animated: true) {
    let frame = safari.view.frame
    frame.size = CGSize(width: frame.width, height: frame.height + 44.0)
    safari.view.frame = frame
}
person Anna Fortuna    schedule 25.07.2017
comment
Для iOS 13 это переместит верхнюю панель вверх и перекроет строку состояния. - person bubuxu; 24.09.2019

Согласно документации Apple по SFSafariViewController, не существует общедоступного способа скрыть кнопку «Готово» или строку URL. Apple предлагает вам использовать WKWebView, если вам нужен собственный интерфейс браузера.

В WKWebView есть учебник AppCoda, в котором показано, как создать ViewController со встроенным WKWebView. Надеюсь, это поможет!

person Mayank    schedule 18.04.2017