我是IOS开发的新手。我创建了一个UIWebView
。
在应用程序启动时,我实现了加载程序。
现在,我希望加载器的尺寸要大一些,并带有一些背景图像。
我的代码是这样:
private var loadingObservation: NSKeyValueObservation?
private lazy var loadingIndicator: UIActivityIndicatorView = {
let spinner = UIActivityIndicatorView()
spinner.translatesAutoresizingMaskIntoConstraints = false
spinner.color = .black
return spinner
}()
override func viewDidLoad() {
super.viewDidLoad()
loadingObservation = webView.observe(\.isLoading, options: [.new, .old]) { [weak self] (_, change) in
guard let strongSelf = self else { return }
// this is fine
let new = change.newValue!
let old = change.oldValue!
if new && !old {
strongSelf.view.addSubview(strongSelf.loadingIndicator)
strongSelf.loadingIndicator.startAnimating()
NSLayoutConstraint.activate([strongSelf.loadingIndicator.centerXAnchor.constraint(equalTo: strongSelf.view.centerXAnchor),
strongSelf.loadingIndicator.centerYAnchor.constraint(equalTo: strongSelf.view.centerYAnchor)])
strongSelf.view.bringSubviewToFront(strongSelf.loadingIndicator)
}
else if !new && old {
strongSelf.loadingIndicator.stopAnimating()
strongSelf.loadingIndicator.removeFromSuperview()
}
}
let myURL = URL(string: "http://192.168.1.4:8080")
let myRequest = URLRequest(url: myURL!)
webView.load(myRequest)
}
通过此代码,我得到的结果如下:
IOS上有专家可以帮助我吗?
我想增加装载机的尺寸。对此真的有任何帮助。谢谢
答案 0 :(得分:2)
您可以尝试设置loadingIndicator.transform = CGAffineTransform.init(scaleX: 2, y: 2)
答案 1 :(得分:0)
制作extension
中的UIActivityIndicatorView
-
extension UIActivityIndicatorView {
func scaleIndicator(factor: CGFloat) {
transform = CGAffineTransform(scaleX: factor, y: factor)
}
}
然后可以从任何地方的scaleIndicator()
对象访问UIActivityIndicatorView
方法-
activityIndicatorView.scaleIndicator(factor: 2.5)