//
|
// CommonAlertView.swift
|
// WanPai
|
//
|
// Created by 杨锴 on 2023/6/7.
|
//
|
|
import UIKit
|
import JQTools
|
|
class CommonAlertView: UIView,JQNibView{
|
|
@IBOutlet weak var view_container: UIView!
|
@IBOutlet weak var label_title: UILabel!
|
@IBOutlet weak var label_content: UILabel!
|
@IBOutlet weak var btn_cancel: UIButton!
|
@IBOutlet weak var btn_complete: UIButton!
|
|
private var title:String!
|
private var content:String!
|
private var clouse:((Bool)->Void)!
|
|
override func awakeFromNib() {
|
super.awakeFromNib()
|
view_container.transform = .init(scaleX: 0.1, y: 0.1)
|
alpha = 0
|
layoutIfNeeded()
|
}
|
|
|
static func show(title:String,content:String,cancelStr:String? = nil,completeStr:String? = nil,isSingle:Bool = false, clouse:@escaping (Bool)->Void){
|
let alertView = CommonAlertView.jq_loadNibView()
|
alertView.label_title.text = title
|
alertView.label_content.text = content
|
alertView.btn_cancel.isHidden = isSingle
|
|
|
if cancelStr != nil{
|
alertView.btn_cancel.setTitle(cancelStr!, for: .normal)
|
}
|
|
if completeStr != nil{
|
alertView.btn_complete.setTitle(completeStr!, for: .normal)
|
}
|
|
|
alertView.clouse = clouse
|
alertView.frame = sceneDelegate?.window?.frame ?? .zero
|
sceneDelegate?.window?.addSubview(alertView)
|
UIView.animate(withDuration: 0.4) {
|
alertView.view_container.transform = .init(scaleX: 1.0, y: 1.0)
|
alertView.alpha = 1
|
}
|
alertView.layoutSubviews()
|
}
|
|
static func show(title:String,attribute:NSMutableAttributedString,isSingle:Bool = false,cancelStr:String? = nil,completeStr:String? = nil, clouse:@escaping (Bool)->Void){
|
let alertView = CommonAlertView.jq_loadNibView()
|
alertView.label_title.text = title
|
alertView.btn_cancel.isHidden = isSingle
|
alertView.label_content.attributedText = attribute
|
|
if cancelStr != nil{
|
alertView.btn_cancel.setTitle(cancelStr!, for: .normal)
|
}
|
|
if completeStr != nil{
|
alertView.btn_complete.setTitle(completeStr!, for: .normal)
|
}
|
|
alertView.clouse = clouse
|
alertView.frame = sceneDelegate?.window?.frame ?? .zero
|
sceneDelegate?.window?.addSubview(alertView)
|
UIView.animate(withDuration: 0.4) {
|
alertView.view_container.transform = .init(scaleX: 1.0, y: 1.0)
|
alertView.alpha = 1
|
}
|
alertView.layoutSubviews()
|
}
|
|
override func layoutSubviews() {
|
super.layoutSubviews()
|
btn_complete.localGradientColor(cornerRadius: 20,bounds: CGRect(x: 0, y: 0, width: JQ_ScreenW - 85 * 2, height: 40))
|
}
|
|
|
@IBAction func closeAction(_ sender: UIButton) {
|
UIView.animate(withDuration: 0.4) {
|
self.view_container.transform = .init(scaleX: 0.1, y: 0.1)
|
self.alpha = 0
|
}completion: { _ in
|
self.clouse!(false)
|
self.removeFromSuperview()
|
}
|
}
|
|
|
|
@IBAction func completeAction(_ sender: UIButton) {
|
UIView.animate(withDuration: 0.4) {
|
self.view_container.transform = .init(scaleX: 0.1, y: 0.1)
|
self.alpha = 0
|
}completion: { _ in
|
self.clouse!(true)
|
self.removeFromSuperview()
|
}
|
}
|
|
}
|