无故事王国
2024-03-14 a478b668ca1a5d4f6d2d9b1075d292cbbef90de5
WanPai/Common/View/QRPreview.swift
@@ -10,42 +10,53 @@
class QRPreview: UIView,JQNibView{
   @IBOutlet weak var img_QRCode: UIImageView!
   @IBOutlet weak var btn_close: UIButton!
   override func awakeFromNib() {
      super.awakeFromNib()
      alpha = 0
      img_QRCode.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)
      btn_close.alpha = 0
      layoutIfNeeded()
   }
            @IBOutlet weak var img_QRCode: UIImageView!
            @IBOutlet weak var btn_close: UIButton!
            @IBOutlet weak var label_title: UILabel!
            override func awakeFromNib() {
                        super.awakeFromNib()
                        alpha = 0
                        label_title.isHidden = true
                        img_QRCode.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)
                        btn_close.alpha = 0
                        layoutIfNeeded()
            }
   static func show(_ text:String){
      let preView = QRPreview.jq_loadNibView()
      preView.frame = sceneDelegate?.window?.frame ?? .zero
      preView.img_QRCode.image = QRCodeImage(string: text, size: (JQ_ScreenW - 88) * sceneDelegate!.window!.screen.scale)
      sceneDelegate?.window?.addSubview(preView)
            static func show(_ text:String,title:String? = nil){
                        let preView = QRPreview.jq_loadNibView()
                        preView.frame = sceneDelegate?.window?.frame ?? .zero
                        preView.img_QRCode.image = QRCodeImage(string: text, size: (JQ_ScreenW - 88) * sceneDelegate!.window!.screen.scale)
                        preView.label_title.text = title
      UIView.animate(withDuration: 0.5) {
         preView.alpha = 1
         preView.img_QRCode.transform = CGAffineTransform(scaleX: 1.0, y: 1.0)
         preView.layoutIfNeeded()
      } completion: { complete in
         if complete{
            preView.btn_close.alpha = 1
            preView.layoutIfNeeded()
         }
      }
   }
   @IBAction func closeAction(_ sender: UIButton) {
      UIView.animate(withDuration: 0.5) {
         self.alpha = 0
         self.img_QRCode.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)
         self.btn_close.alpha = 0
      } completion: { _ in
         self.removeFromSuperview()
      }
   }
                        sceneDelegate?.window?.addSubview(preView)
                        UIView.animate(withDuration: 0.5) {
                                    preView.alpha = 1
                                    if title == nil{
                                                preView.label_title.isHidden = true
                                                preView.img_QRCode.transform = CGAffineTransform(scaleX: 1.0, y: 1.0)
                                    }else{
                                                preView.label_title.isHidden = false
                                                preView.img_QRCode.transform = CGAffineTransform(scaleX: 0.9, y: 0.9)
                                    }
                                    preView.layoutIfNeeded()
                        } completion: { complete in
                                    if complete{
                                                preView.btn_close.alpha = 1
                                                preView.layoutIfNeeded()
                                    }
                        }
            }
            @IBAction func closeAction(_ sender: UIButton) {
                        UIView.animate(withDuration: 0.5) {
                                    self.alpha = 0
                                    self.img_QRCode.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)
                                    self.btn_close.alpha = 0
                        } completion: { _ in
                                    self.removeFromSuperview()
                        }
            }
}