杨锴
2024-09-14 6912d657ec6bb1db9683d5b5be8f0777f001ba11
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
//
//  PlanGuideVC.swift
//  XQMuse
//
//  Created by 无故事王国 on 2024/8/29.
//
 
import UIKit
import AVFoundation
import JQTools
 
let PlantGuideQuit_Noti = Notification.Name.init(rawValue: "PlantGuideQuit_Noti")
 
class PlanGuideVC: BaseVC {
 
                @IBOutlet weak var view_gradient: UIView!
                @IBOutlet weak var btn_back: UIButton!
                @IBOutlet weak var label_title: UILabel!
                @IBOutlet weak var label_subTitle: UILabel!
                @IBOutlet weak var label_info: UILabel!
                @IBOutlet weak var btn_custom: UIButton!
 
                private lazy var player:AVPlayer = {
                                let bgPath = Bundle.main.url(forResource: "bg_movie", withExtension: "mov")
                                let p = AVPlayer(url: bgPath!)
                                p.isMuted = true
                                return p
                }()
 
                private lazy var playerLayer:AVPlayerLayer = {
                                let pLayer = AVPlayerLayer()
                                pLayer.videoGravity = .resize
                                return pLayer
                }()
 
                override func viewDidLoad() {
                                super.viewDidLoad()
 
                }
 
                override func viewWillAppear(_ animated: Bool) {
                                super.viewWillAppear(animated)
                                player.play()
                }
 
                override func viewDidDisappear(_ animated: Bool) {
                                super.viewDidDisappear(animated)
                                player.pause()
                }
 
                override func setUI() {
 
                                label_title.font = Def_FlyFlowerSong(fontSize: 35)
                                label_title.textColor = .white
 
                                label_subTitle.attributedText =     AttributedStringbuilder.build().add(string: "亲爱的家人,温暖喜悦问候您\n我是心泉老师\n欢迎来到心泉·疗愈空间\n愿这一方空间为您带来\n平和 喜悦 放松 宁静", withFont: Def_SourceHanSerif_Regular(fontSize: 17), withColor: .white,lineSpace: 10).mutableAttributedString
                                label_subTitle.textAlignment = .center
 
 
                                label_info.font = Def_FlyFlowerSong(fontSize: 17)
                                label_info.textColor = .white
 
                                btn_custom.jq_borderColor = .white
                                btn_custom.backgroundColor = .white.withAlphaComponent(0.3)
                                btn_custom.jq_borderWidth = 1
                                btn_custom.titleLabel?.font = Def_SourceHanSerif_Semibold(fontSize: 20)
 
 
                                playerLayer.player = player
                                view.layer.addSublayer(playerLayer)
                                playerLayer.zPosition = -999
                }
 
                override func viewDidLayoutSubviews() {
                                super.viewDidLayoutSubviews()
                                playerLayer.frame = view.frame
 
                                view_gradient.jq_gradientColor(colorArr: [UIColor.black.withAlphaComponent(0.25).cgColor,UIColor.clear.cgColor],startPoint: CGPoint(x: 0, y: 1),endPoint: CGPoint(x: 0, y: 0))
                }
 
                override func setRx() {
                                NotificationCenter.default.addObserver(forName: .AVPlayerItemDidPlayToEndTime, object: nil, queue: nil) { [weak self] _ in
                                                self?.player.seek(to: CMTime.zero)
                                                self?.player.play()
                                }
 
                                NotificationCenter.default.rx.notification(PlantGuideQuit_Noti).take(until: self.rx.deallocated).subscribe(onNext: {data in
                                                if data.object as? Bool == true{
 
                                                }
                                                self.dismiss(animated: true)
                                }).disposed(by: disposeBag)
                }
 
                override var preferredStatusBarStyle: UIStatusBarStyle{
                                return .lightContent
                }
 
                @IBAction func backAction(_ sender: UIButton) {
                                self.dismiss(animated: true)
                }
 
                @IBAction func customAction(_ sender: UIButton) {
                                PlanGuidePromptView.show { type in
                                                switch type {
                                                                case .seeOther:
                                                                                let vc = PlanGuide_1_VC()
                                                                                self.jq_push(vc: vc)
                                                                case .toSeting:
                                                                                self.dismiss(animated: true) {
                                                                                                let vc = BackgroundVoiceVC()
                                                                                                vc.hidesBottomBarWhenPushed = true
                                                                                                JQ_currentNavigationController().pushViewController(vc)
                                                                                }
                                                }
                                }
                }
}