, 문서가로드 될 때까지 기다릴 필요가 보인다, 다음 subviews의 배경을 취소하십시오. PDFView
(iOS 11 이상)보다 WKWebView
을 사용하면 두 배 탭으로 확대/축소하고 페이지 수 표시기를 내장하고 이전 버전의 iOS와 호환된다는 장점이 있습니다.
언제든지 솔루션을 깨뜨릴 수 있으므로 언제든지 구현을 변경할 수 있으므로 시스템보기를 살펴 보는 것은 좋지 않습니다. 그것을 시도하고, 또한 색상 퍼팅
class SomeViewController: UIViewController {
var observer: NSKeyValueObservation?
var url: URL
init(url: URL) {
self.url = url
super.init(nibName: nil, bundle: nil)
}
func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor.black
let webView = WKWebView()
webView.translatesAutoResizingMaskIntoConstraints = false
self.view.addSubview(webView)
NSLayoutConstraint.activate([
webView.topAnchor.constraint(equalTo: self.view.topAnchor),
webView.leftAnchor.constraint(equalTo: self.view.leftAnchor),
webView.rightAnchor.constraint(equalTo: self.view.rightAnchor),
webView.bottomAnchor.constraint(equalTo: self.view.bottomAnchor)
])
self.observer = webView.observe(\.isLoading, changeHandler: { (webView, change) in
webView.clearBackgrounds()
})
webView.loadFileURL(self.url, allowingReadAccessTo: self.url)
}
}
extension UIView {
func clearBackgrounds() {
self.backgroundColor = UIColor.clear
for subview in self.subviews {
subview.clearBackgrounds()
}
}
}
감사 : 여기
내가 스위프트 사에 검은 배경으로 PDF 미리보기 컨트롤러를 구현하는 방법입니다 투명; CSS 파일에서도 작동하지 않습니다. 배경은 항상 흰색입니다. –