fix
无故事王国
2024-06-14 e2c245035a515bb7f623706b66f05e8dfc2c2fef
DolphinEnglishLearnStudent/Moudle/Home/Listen/VC/HomeListenFight_lesson_5_VC.swift
@@ -10,7 +10,7 @@
class HomeListenFight_lesson_5_VC: BaseVC {
            private var viewModel = FightAnswerViewModel()
            private var listen1Model:Listen1Model!
            private var listenNewModel:ListenNewModel!
            private var page:Int!
            private var answterCount:Int = 0 //回答计数,用于确定角标
            private var playVoiceAt:Int? //播放声音的View
@@ -48,11 +48,11 @@
                        return label
            }()
            required init(page:Int,listen1Model:Listen1Model){
            required init(page:Int,listenNewModel:ListenNewModel){
                        super.init(nibName: nil, bundle: nil)
                        self.page = page
                        self.listen1Model = listen1Model
                        self.listen1Model.subjectList.shuffle()
                        self.listenNewModel = listenNewModel
//                        self.listen1Model.subjectList.shuffle()
            }
            required init?(coder: NSCoder) {
@@ -145,7 +145,7 @@
                        }
                        var tempArray = [VoiceHandleView]()
                        for (i,value) in listen1Model.subjectList.enumerated(){
                        for (i,value) in listenNewModel.subjectList[page].enumerated(){
                                    let answerView = VoiceHandleView()
                                    answerView.listenType = .lesson5
                                    answerView.tag = 1000+i
@@ -172,7 +172,7 @@
            private func showHintText(_ state:Bool){
                        if let at = playVoiceAt{
                                    label_hint.text = listen1Model.subjectList[at].name
                                    label_hint.text = listenNewModel.subjectList[page][at].name
                                    UIView.animate(withDuration: 0.5) {
                                                if state{
                                                            self.label_hint.snp.remakeConstraints { make in
@@ -202,8 +202,8 @@
                        viewModel.selectIndex.accept(indexPath)
                        let answer = listen1Model.subjectList[playVoiceAt!]
                        let selectAnswer = listen1Model.subjectList[indexPath.row]
                        let answer = listenNewModel.subjectList[page][playVoiceAt!]
                        let selectAnswer = listenNewModel.subjectList[page][indexPath.row]
                        var answerType:Fight_lessonType = .none
@@ -269,7 +269,7 @@
extension HomeListenFight_lesson_5_VC:UICollectionViewDataSource{
            func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
                        let model = listen1Model.subjectList[indexPath.row]
                        let model = listenNewModel.subjectList[page][indexPath.row]
                        let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_ListenFight_lesson_1_CCell", for: indexPath) as! ListenFight_lesson_1_CCell
                        cell.jq_addShadows(shadowColor: .black.withAlphaComponent(0.31), corner: 8, radius: 3, offset: CGSize(width: 0, height: 1), opacity: 1)
                        if viewModel.selectIndex.value == indexPath{
@@ -288,7 +288,7 @@
            }
            func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
                        return listen1Model.subjectList.count
                        return listenNewModel.subjectList[page].count
            }
            func numberOfSections(in collectionView: UICollectionView) -> Int {
@@ -303,9 +303,15 @@
                                    subV.resetView()
                        }
                        if viewModel.answerType.value == .success{
                                    let v = rootViewModel.answerCount.value + 1
                                    rootViewModel.answerCount.accept(v)
                                    viewModel.answerType.accept(.none)
                        }
                        DispatchQueue.main.asyncAfter(deadline: .now()+0.4) {
                                    if self.answterCount >= 4{
                                                self.rootViewModel.answerItems[self.page] = self.listen1Model
                                                self.rootViewModel.answerItems[self.page] = self.listenNewModel.subjectList[self.page]
                                                self.voicePlayer.playerEnd()
                                                NotificationCenter.default.post(name: NextLession_Noti, object: nil)
                                    }