fix
无故事王国
2024-06-11 d6157c137a888d4f6931255735c3ed39575c579d
DolphinEnglishLearnStudent/Moudle/Home/Listen/VC/HomeListenStory_1_VC.swift
@@ -11,6 +11,10 @@
            private var viewModel = FightAnswerViewModel()
            private var listen1Model:Listen1Model!
            private var page:Int!
            var rootViewModel:HomeListenFightViewModel!
            private lazy var stackView:UIStackView = {
                        let stackView = UIStackView()
                        stackView.spacing = 78
@@ -29,6 +33,16 @@
                        collection.register(UINib(nibName: "SimpleImageCCell", bundle: nil), forCellWithReuseIdentifier: "_SimpleImageCCell")
                        return collection
            }()
            required init(page:Int,listen1Model:Listen1Model){
                        super.init(nibName: nil, bundle: nil)
                        self.page = page
                        self.listen1Model = listen1Model
            }
            required init?(coder: NSCoder) {
                        fatalError("init(coder:) has not been implemented")
            }
            override func setUI() {
                        super.setUI()
@@ -55,33 +69,51 @@
                                    make.width.greaterThanOrEqualTo(100)
                        }
                        for subV in stackView.arrangedSubviews{
                                    subV.removeFromSuperview()
                        }
                        stackView.removeArrangedSubviews()
                        var tempHandleViews = [StudyHandleView]()
                        for index in 0...2{
                                    let handleView = StudyHandleView.jq_loadNibView()
                                    handleView.listenType = .lesson2
                                    if index == 0{
                                                handleView.vioceSoundUrl = listen1Model.storyList[page].correct
                                    }else if index == 1{
                                                handleView.vioceSoundUrl = listen1Model.storyList[page].error.components(separatedBy: ",").first
                                    }else{
                                                handleView.vioceSoundUrl = listen1Model.storyList[page].error.components(separatedBy: ",").last
                                    }
                                    handleView.btn_choose.tag = 10 + index
                                    handleView.chooseClouse {[weak self] btn in
                                                guard let weakSelf = self else { return }
                                                var lessionType:Fight_lessonType = .none
                                                lessionType = .success
                                                if weakSelf.listen1Model.storyList[weakSelf.page].correct == handleView.vioceSoundUrl{
                                                            lessionType = .success
                                                }else{
                                                            lessionType = .fail
                                                }
                                                switch lessionType {
                                                            case .success:
//                                                                        handleView.btn_choose.isEnabled = false
                                                                        weakSelf.rootViewModel.correctNum += 1
                                                                        handleView.btn_choose.isSelected = true
                                                                        handleView.btn_state.setImage(UIImage(named: "icon_success_small"), for: .normal)
                                                                        UIView.animate(withDuration: 0.5) {
                                                                                    handleView.btn_state.alpha = 1
                                                                        }
//                                                                        if let cell = self?.collectionView.dequeueReusableCell(withReuseIdentifier: "_SimpleImageCCell", for: self!.viewModel.selectIndex.value!) as? SimpleImageCCell{
//                                                                                    self?.viewModel.answerType.accept(.success)
//                                                                        }
                                                                        DispatchQueue.main.asyncAfter(delay: 1.0) {
                                                                                    var dict = Dictionary<String,Any>()
                                                                                    dict["storyIntegral"] = weakSelf.listen1Model.data?.lookIntegral ?? 0
                                                                                    dict["storyId"] = weakSelf.listen1Model.data?.id ?? 0
                                                                                    NotificationCenter.default.post(name: NextLession_Noti, object: dict)
                                                                                    VoicePlayer.share().playerEnd()
                                                                                    return
                                                                        }
                                                            case .fail:
                                                                        weakSelf.rootViewModel.errorNum += 1
                                                                        handleView.btn_state.setImage(UIImage(named: "icon_waring_small"), for: .normal)
                                                                        UIView.animate(withDuration: 0.5) {
                                                                                    handleView.btn_state.alpha = 1
@@ -95,8 +127,11 @@
                                                make.height.equalTo(52)
                                                make.width.greaterThanOrEqualTo(159)
                                    }
                                    stackView.addArrangedSubview(handleView)
                                    tempHandleViews.append(handleView)
                        }
                        tempHandleViews.shuffle()
                        stackView.addArrangedSubviews(tempHandleViews)
            }
}
@@ -110,7 +145,9 @@
extension HomeListenStory_1_VC:UICollectionViewDataSource{
            func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
                        let m = listen1Model.storyList[page]
                        let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_SimpleImageCCell", for: indexPath) as! SimpleImageCCell
                        cell.img_cover.sd_setImage(with: URL(string: m.img))
                        cell.jq_cornerRadius = 10
                        return cell
            }