无故事王国
6 天以前 41aa6375f4086c3bbabd00c710c0734b25962d78
DolphinEnglishLearnStudent/Moudle/Home/HomeListenFight_lesson_1_VC.swift
@@ -27,9 +27,6 @@
    private var isAnsterModel = [Listen1SubModel]()
    //已回答过的题
    private var answerList = [Listen1SubModel]()
    private var menuView:VoiceHandleView?
    private var handleClouse:(()->Void)?
@@ -76,7 +73,6 @@
        super.viewDidLoad()
        navigationItem.titleView = UIView()
        collectionView.reloadData()
        print("加载======DidLoad")
        //回传记录,始终保持答题进度
//        if let team = teamScheduleModel{
@@ -86,15 +82,21 @@
//            }
//        }
        //制造随机
        //        listenNewModel.subjectList[page].shuffle()
        getNextAnswer(isFirst: true)
        menuView?.listenType = .lesson1
        DispatchQueue.main.asyncAfter(deadline: .now()+2) {
            VoicePlayer.share().playerAt(url: self.randomElement?.correct)
            self.menuView?.playing()
        }
        rootViewModel.currentPage.subscribe(onNext: {[unowned self] cpage in
            if cpage == self.page{
                self.restore()
                self.randomElement = self.listenNewModel.subjectList[self.page].randomElement() //随机抽题
                DispatchQueue.main.asyncAfter(deadline: .now()+2) {
                    VoicePlayer.share().playerAt(url: self.randomElement?.correct)
                    self.menuView?.playing()
                }
            }
        }).disposed(by: disposeBag)
    }
    override func viewDidAppear(_ animated: Bool) {
@@ -112,8 +114,7 @@
    func restore(){
        teamScheduleModel?.topicIds.removeAll()
        teamScheduleModel?.teamIds.removeAll()
        answerList.removeAll()
        rootViewModel.currentPage.accept(0)
//        rootViewModel.currentPage.accept(0)
        rootViewModel.answerCount.accept(1)
        isAnsterDone = false
        isAnsterModel.removeAll()
@@ -165,14 +166,13 @@
        if randomElement != nil{
            //如果已经回答,或标记为已回答(返回上一小题时)
            if isAnsterModel.contains(randomElement!){
                answerList.append(randomElement!)
                getNextAnswer();return
            }
            //没有回答
            if !isAnsterModel.contains(randomElement!){
                isAnsterModel.append(randomElement!)
            }
//            //没有回答
//            if !isAnsterModel.contains(randomElement!){
//                isAnsterModel.append(randomElement!)
//            }
        }
        menuView?.playUrl = randomElement?.correct
@@ -284,6 +284,8 @@
                        weakSelf.handleClouse?()
                    }).disposed(by: weakSelf.disposeBag)
                    weakSelf.isAnsterModel.append(weakSelf.listenNewModel.subjectList[weakSelf.page][index.row])
                    DispatchQueue.main.asyncAfter(deadline: .now()+2) {
                        VoicePlayer.share().playerAt(url: weakSelf.listenNewModel.subjectList[weakSelf.page][index.row].correct)
                    }