fix
无故事王国
2024-06-11 d6157c137a888d4f6931255735c3ed39575c579d
DolphinEnglishLearnStudent/Moudle/Home/HomeListenFight_lesson_1_VC.swift
@@ -22,8 +22,10 @@
            private var randomElement:Listen1SubModel?
            private var page:Int!
            var rootViewModel:HomeListenFightViewModel!
            private var isListen:Bool = false
            private var isAnsterComplete:Bool = false //是否已经回答完成
            private var menuView:StudyHandleView = StudyHandleView.jq_loadNibView()
            private var menuView:VoiceHandleView!
            private lazy var collectionView:UICollectionView = {
                        let flowLayout = UICollectionViewFlowLayout()
@@ -52,16 +54,18 @@
                        navigationItem.titleView = UIView()
                        collectionView.reloadData()
                        menuView.listenType = .lesson1
//                        collectionView.isUserInteractionEnabled = false
                        //制造随机
                        randomElement = listen1Model.subjectList.randomElement()
                        menuView.vioceSoundUrl = randomElement?.correct
                        VoicePlayer.share().playEnd {[weak self] in
                                    self?.menuView.reset()
                        }
            }
            override func viewDidAppear(_ animated: Bool) {
                        super.viewDidAppear(animated)
                        VoicePlayer.share().delegate = self
            }
            override func viewDidDisappear(_ animated: Bool) {
                        super.viewDidDisappear(animated)
                        VoicePlayer.share().delegate = nil
            }
            override func setUI() {
@@ -78,12 +82,17 @@
                                    make.bottom.equalToSuperview()
                        }
                        menuView = VoiceHandleView()
                        //制造随机
                        randomElement = listen1Model.subjectList.randomElement()
                        menuView.playUrl = randomElement?.correct
                        menuView.listenType = .lesson1
                        view.addSubview(menuView)
                        menuView.snp.makeConstraints { make in
                                    make.top.equalTo(self.view.safeAreaLayoutGuide.snp.top).offset(24)
                                    make.centerX.equalToSuperview()
                                    make.height.equalTo(52)
                                    make.width.equalTo(199)
                                    make.width.equalTo(159)
                        }
            }
@@ -98,10 +107,15 @@
                                                if self?.randomElement?.id == self?.listen1Model.subjectList[index.row].id{
                                                            answer = .success
                                                            self?.rootViewModel.correctNum += 1
                                                            if self?.isAnsterComplete == false{
                                                                        self?.rootViewModel.correctNum += 1
                                                            }
                                                            self?.isAnsterComplete = true
                                                }else{
                                                            answer = .fail
                                                            self?.rootViewModel.errorNum += 1
                                                            if self?.isAnsterComplete == false{
                                                                        self?.rootViewModel.errorNum += 1
                                                            }
                                                }
                                                switch answer {
@@ -127,13 +141,13 @@
                                    self.menuView.snp.updateConstraints { make in
                                                make.top.equalTo(self.view).offset(v.origin.y + UIDevice.jq_safeEdges.top + 101 + 50)
                                                make.left.equalToSuperview().offset(v.origin.x + 194)
                                                make.width.equalTo(v.size.width + 50)
                                                make.width.equalTo(v.size.width - 10)
                                                make.height.equalTo(40)
                                    }
                                    self.view.layoutIfNeeded()
                        }completion: { _ in
                                    self.collectionView.reloadData()
                                    DispatchQueue.main.asyncAfter(deadline: .now()+2){
                                    DispatchQueue.main.asyncAfter(deadline: .now()+1.2){
                                                NotificationCenter.default.post(name: NextLession_Noti, object: nil)
//                                                self.collectionView.isUserInteractionEnabled = true
                                                self.viewModel.answerType.accept(.none)
@@ -151,6 +165,9 @@
extension HomeListenFight_lesson_1_VC:UICollectionViewDelegate{
            func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
                        if !isListen{
                                    alertError(msg: "请先听题");return
                        }
                        viewModel.selectIndex.accept(indexPath)
            }
}
@@ -174,3 +191,10 @@
                        return min(4,listen1Model.subjectList.count)
            }
}
extension HomeListenFight_lesson_1_VC:VoicePlayerDelegate{
            func playComplete() {
                        isListen = true
                        menuView.resetView()
            }
}