-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAllExtensions.swift
60 lines (45 loc) · 1.67 KB
/
AllExtensions.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
//
// AllExtensions.swift
// Cricbuzz
//
// Created by Ali Sher on 30/03/2022.
//
import UIKit
var vSpinner : UIView?
extension UIViewController {
func showSpinner(onView : UIView) {
let spinnerView = UIView.init(frame: onView.bounds)
spinnerView.backgroundColor = UIColor.init(red: 0.3, green: 0.3, blue: 0.3, alpha: 0.5)
var x = self.view.frame.size.width/2
x -= 50
var y = self.view.frame.size.height/2
y -= 50
let spinnerView1 = UIView.init(frame: CGRect(x: x, y: y, width: 100, height: 100))
spinnerView1.backgroundColor = .black
spinnerView1.layer.cornerRadius = 16
let ai = UIActivityIndicatorView.init(style: .whiteLarge)
ai.startAnimating()
ai.frame = CGRect(x: 25, y: 16, width: 50, height: 50)
spinnerView1.addSubview(ai)
let textLabel = UILabel.init(frame: CGRect(x: 5, y: 60, width: 90, height: 40))
textLabel.backgroundColor = .clear
textLabel.textColor = .white
spinnerView1.layer.cornerRadius = 16
textLabel.text = "Please Wait"
textLabel.textAlignment = .center
textLabel.numberOfLines = 2
textLabel.font = UIFont.boldSystemFont(ofSize: 13)
spinnerView1.addSubview(textLabel)
DispatchQueue.main.async {
spinnerView.addSubview(spinnerView1)
onView.addSubview(spinnerView)
}
vSpinner = spinnerView
}
func removeSpinner() {
DispatchQueue.main.async {
vSpinner?.removeFromSuperview()
vSpinner = nil
}
}
}