无故事王国
2024-05-23 efc3ee1d65062b2fc0ef83df06df18509661180e
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
//
//  Config.swift
//  DolphinEnglishLearnManager
//
//  Created by 无故事王国 on 2024/5/14.
//
 
import Foundation
import UIKit
import OSLog
import SVProgressHUD
 
@_exported import JQTools
 
var sceneDelegate:SceneDelegate? = {
                var uiScreen:UIScene?
                UIApplication.shared.connectedScenes.forEach { scenes in
                                uiScreen = scenes
                }
                return (uiScreen?.delegate as? SceneDelegate)
}()
 
 
struct Config {
                static let ThemeBGColor:UIColor = UIColor(hexStr: "#C3BFB3")
                static let ThemeColor:UIColor = UIColor(hexStr: "#4195D3")
                static let NavFontColor = UIColor.black.withAlphaComponent(0.8)
                static let NavFont = UIFont.systemFont(ofSize: 15, weight: .medium)
 
                static var RatioW:Double{get{return JQ_ScreenW / 810.0}}
                static var RatioH:Double{get{return JQ_ScreenH / 1080.0}}
}
 
 
func LogInfo(_ items:Any...,separator:String=" ",file:String=#file,function:String=#function,line:Int=#line){
#if DEBUG
                if #available(iOS 14.0, *) {
                                let logger = Logger(subsystem: "WanPai", category: function)
                                logger.error("\(items)")
                }else{
                                let file = (file as NSString).lastPathComponent.split(separator: ".").first!;
                                print("⚠️⚠️⚠️INFO: \(file)  \(function) [Line: \(line)]: \(items)",separator);
                }
#endif
}
 
//提示框
func alert(msg: String) {
                SVProgressHUD.showInfo(withStatus: msg)
}
 
func alertError(msg:String){
                SVProgressHUD.showError(withStatus: msg)
}
 
func alertSuccess(msg:String){
                SVProgressHUD.showSuccess(withStatus: msg)
}
 
func showHUD(_ text:String? = nil){
                SVProgressHUD.show(withStatus: text)
}
 
func hiddenHUD(_ delay:TimeInterval? = nil){
                if delay != nil{
                                SVProgressHUD.dismiss(withDelay: delay!)
                }else{
                                SVProgressHUD.dismiss()
                }
}
 
 
 
extension UIButton{
                public func openCountDown(_ t:Int = 59,defultTitle:String = "获取验证码",textColor:UIColor,unenableColor:UIColor){
                                var time = t //倒计时时间
                                let queue = DispatchQueue.global()
                                let timer = DispatchSource.makeTimerSource(flags: [], queue: queue)
                                timer.schedule(wallDeadline: DispatchWallTime.now(), repeating: .seconds(1));
                                timer.setEventHandler(handler: {
                                                if time <= 0 {
                                                                timer.cancel()
                                                                DispatchQueue.main.async(execute: {
                                                                                self.setTitle(defultTitle, for: .normal)
                                                                                self.setTitleColor(textColor, for: .normal)
                                                                                self.isUserInteractionEnabled = true
                                                                });
                                                }else {
                                                                DispatchQueue.main.async(execute: {
                                                                                self.setTitle("\(time)s", for: .normal)
                                                                                self.setTitleColor(unenableColor, for: .normal)
                                                                                self.isUserInteractionEnabled = false
                                                                });
                                                }
                                                time -= 1
                                });
                                timer.resume()
                }
}