准备好所有UI控件
lazy var webView: WKWebView = {
let config = WKWebViewConfiguration()
config.userContentController = WKUserContentController()
let view = WKWebView(frame: CGRect.zero, configuration: config)
view.uiDelegate = self
view.navigationDelegate = self
return view
}()
lazy var progressView: UIProgressView = {
let progressView = UIProgressView()
progressView.progressTintColor = .green
progressView.progressViewStyle = .bar
progressView.progress = 0.0
return progressView
}()
lazy var closeButton: UIBarButtonItem = {
let button = UIBarButtonItem(title: "关闭", style: UIBarButtonItemStyle.plain, target: self, action: #selector(MYWebViewController.closeAction(_:)))
return button
}()
lazy var goBackButton: UIBarButtonItem = {
let button = UIBarButtonItem(title: "返回", style: UIBarButtonItemStyle.plain, target: self, action: #selector(MYWebViewController.goBackAction(_:)))
return button
}()
外部URL传入
public var url: URL?
控制progressView
fileprivate var progress: Float {
get {
return self.progressView.progress
}
set {
if newValue >= 1.0 {
self.progressView.alpha = 0.0
}else {
self.progressView.alpha = 1.0
}
}
}
控制closeButton
fileprivate var showClosedButton = true {
didSet {
guard self.isViewLoaded else {
return
}
if self.showClosedButton {
self.navigationItem.leftBarButtonItems = [self.goBackButton, self.closeButton]
}else {
self.navigationItem.leftBarButtonItems = [self.goBackButton]
}
}
}
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。