From 252736e890fd50550ab9dec218159356e2a953c1 Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期四, 18 七月 2024 17:51:37 +0800 Subject: [PATCH] fix bug --- app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt | 27 +++++++++++++++++++-------- 1 files changed, 19 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt b/app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt index 54cee71..c244512 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt @@ -18,6 +18,7 @@ import com.dollearn.student.utils.Const import com.dollearn.student.utils.extention.clickDelay import kotlinx.android.synthetic.main.fragment_include.* +import org.jetbrains.anko.support.v4.dip import org.jetbrains.anko.support.v4.startActivity class IncludeFragment : BaseFragment(), AudioUtils.OnAudioStatusUpdateListener { @@ -63,6 +64,7 @@ super.handleMessage(msg) when(msg.what){ PLAY_VOICE->{ + playing = true player.startPlayMusic(requireContext(),data!!.subjectList[group][voiceIndex].correct) } TO_NEXT->{ @@ -71,10 +73,12 @@ } } PLAY_RIGHT->{ + playing = true rightPlaying = true player.startPlayMusic(requireContext(),rightVoice) } PLAY_ERROR->{ + playing = true errorPlaying = true player.startPlayMusic(requireContext(),errorVoice) } @@ -120,13 +124,14 @@ } cl_answer_1.clickDelay { - if (currentImage == 0) + if (currentImage == 0||!data!!.subjectList[group][currentImage].listend) return@clickDelay val subject = data!!.subjectList[group][currentImage] if (!subject.listend||subject.completed){ return@clickDelay } act.totalCount++ + data!!.subjectList[group][currentImage].listend = false if (answerImg[0] == subject.img){ nowVoiceView = voiceViews[currentImage] act.rightCount++ @@ -143,7 +148,7 @@ } cl_answer_2.clickDelay { - if (currentImage == 0) + if (currentImage == 0||!data!!.subjectList[group][currentImage].listend) return@clickDelay val subject = data!!.subjectList[group][currentImage] if (!subject.listend||subject.completed){ @@ -151,6 +156,7 @@ } act.totalCount++ + data!!.subjectList[group][currentImage].listend = false if (answerImg[1] == subject.img){ nowVoiceView = voiceViews[currentImage] act.rightCount++ @@ -167,7 +173,7 @@ } cl_answer_3.clickDelay { - if (currentImage == 0) + if (currentImage == 0||!data!!.subjectList[group][currentImage].listend) return@clickDelay val subject = data!!.subjectList[group][currentImage] if (!subject.listend||subject.completed){ @@ -175,6 +181,7 @@ } act.totalCount++ + data!!.subjectList[group][currentImage].listend = false if (answerImg[2] == subject.img){ nowVoiceView = voiceViews[currentImage] act.rightCount++ @@ -417,7 +424,6 @@ override fun onFinishPlay() { playing = false val subject = data!!.subjectList[group][voiceIndex] - subject.listend = true when(voiceIndex){ 0->{ iv1_1.visible() @@ -470,19 +476,24 @@ } } } - showVoiceEnable() - if (errorPlaying) errorPlaying = false - if (rightPlaying) { + else if (rightPlaying) { rightPlaying = false data!!.subjectList[group][currentImage].completed = true nowVoiceView?.callOnClick() - } + }else + subject.listend = true + showVoiceEnable() } override fun onPause() { super.onPause() player.stopPlayMusic() } + + override fun onDestroy() { + super.onDestroy() + handler?.removeCallbacksAndMessages(null) + } } \ No newline at end of file -- Gitblit v1.7.1