swift中swiftNotice的pleaseWait()方法

在这里插入图片描述

调用方法:

   var isTrue:Bool = false
   override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
     
        isTrue = !isTrue
        if isTrue {
            SwiftNoticeDemo.wait()
        }else{
            SwiftNoticeDemo.clearAll()
        }
    }

SwiftNoticeDemo.swift

import Foundation
import UIKit

class SwiftNoticeDemo:NSObject {
    
   static var windows = [UIWindow]()
  
    
    @discardableResult
    static func wait() -> UIWindow? {
        let frame = CGRect(x: 0, y: 0, width: 80, height: 80)
       
        let subView = UIApplication.shared.keyWindow?.subviews.first
        
        let window = UIWindow()
        window.backgroundColor = UIColor.purple
        let mainView = UIView()
         mainView.layer.cornerRadius = 12
//        mainView.backgroundColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.8)
        mainView.backgroundColor = UIColor.red
        let activityIndicatorView = UIActivityIndicatorView(activityIndicatorStyle: .white)
        activityIndicatorView.frame = CGRect(x: 20, y: 20, width: 40, height: 40)
        activityIndicatorView.startAnimating()
        mainView.addSubview(activityIndicatorView)
        
        
        window.frame = frame
        mainView.frame = frame
        window.center = subView!.center
        
        
        window.windowLevel = UIWindowLevelAlert
        window.isHidden = false
        window.addSubview(mainView)
        SwiftNoticeDemo.windows.append(window)
        
        mainView.alpha = 0.0
        UIView.animate(withDuration: 0.5) {
            mainView.alpha = 1
        }
        return window
    }
    
    static func clearAll(){
        SwiftNoticeDemo.windows.removeAll()
    }
   }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值