У меня есть пользовательское представление, которое добавляет WKWebView, как это:
override func awakeFromNib() {
super.awakeFromNib()
loadWebView()
}
func loadWebView() {
pdfWebView = WKWebView(frame: .zero)
pdfWebView.navigationDelegate = self
pdfWebView.translatesAutoresizingMaskIntoConstraints = false
pdfWebView.isHidden = true
self.addSubview(pdfWebView)
... add constrains to self anchors - top, left, right, bottom
}
Когда загрузка заканчивается, у меня есть это:
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
DispatchQueue.main.asyncAfter(deadline: .now() + 0.8, execute: {
SVProgressHUD.dismiss()
webView.isHidden = false
webView.isOpaque = true
webView.adjustInsets()
})
}
Мне пришлось настроить вкладыши, потому что на iPhone X иногда PDF-файл прилипал к низу, а не к верху.
extension WKWebView {
func adjustInsets() {
parentViewController?.automaticallyAdjustsScrollViewInsets = false
scrollView.contentInset = .zero
scrollView.scrollIndicatorInsets = .zero
scrollView.contentOffset = .zero
}
}
Результат таков:
Серая рамка.
Я пробовал это:
настройка представлений, pdfWebView и pdfWebView.scrollView фон с .white или .clear
webView.isOpaque = false
(это единственный, который удаляет нижнюю часть серого, но не границу)
Я использовал расширение, чтобы установить цвет .clear для всех дочерних видов
extension UIView {
func clearBackgrounds() {
self.backgroundColor = UIColor.clear
for subview in self.subviews {
subview.clearBackgrounds()
}
}
}
Ничего не работает для удаления границы . Я не могу редактировать PDF, потому что он загружен с ws и используется в нескольких приложениях.