From 442124baa483f8d1c4aaca7ff81e15dd3f122363 Mon Sep 17 00:00:00 2001 From: 罗明文 <125975490@qq.com> Date: 星期四, 22 五月 2025 13:14:36 +0800 Subject: [PATCH] save --- app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt | 39 ++++++++++++++++++++++----------------- 1 files changed, 22 insertions(+), 17 deletions(-) diff --git a/app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt b/app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt index fec15a7..74de738 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt @@ -49,6 +49,9 @@ val indexList = arrayListOf<SortBean>() private val indexAdapter = IndexAdapter(indexList) + val vp by lazy { view_pager } + var recoverd = false //true已经恢复了进度,后续语音可以自动播放 + override fun initClick() { tv_last.setOnClickListener { val tipDialog = TipDialog() @@ -103,7 +106,7 @@ finish() }else{ view_pager.setCurrentItem(view_pager.currentItem+1,true) - (fragments[view_pager.currentItem+1] as IncludeFragment).recover() + (fragments[view_pager.currentItem] as IncludeFragment).recover() tv_last.visible() indexAdapter.notifyDataSetChanged() } @@ -120,22 +123,6 @@ subjectList.forEachIndexed { index, subject -> fragments.add(IncludeFragment.getInstance(index)) } - } - recover() - handler= object :Handler(Looper.myLooper()!!){ - override fun handleMessage(msg: Message) { - super.handleMessage(msg) - if (msg.what == 0){ - time++ - handler?.sendEmptyMessageDelayed(0,1000L) - } - } - } - handler?.sendEmptyMessageDelayed(0,1000L) - } - - private fun recover(){ - HttpManager.teamSchedule(day,week,3).request(this){_,data-> view_pager.adapter = @SuppressLint("WrongConstant") object : FragmentPagerAdapter(supportFragmentManager,0) { override fun getItem(p0: Int): Fragment { @@ -166,11 +153,29 @@ override fun onPageScrollStateChanged(state: Int) { } }) + } + recover() + handler= object :Handler(Looper.myLooper()!!){ + override fun handleMessage(msg: Message) { + super.handleMessage(msg) + if (msg.what == 0){ + time++ + handler?.sendEmptyMessageDelayed(0,1000L) + } + } + } + handler?.sendEmptyMessageDelayed(0,1000L) + } + + private fun recover(){ + HttpManager.teamSchedule(day,week,3).request(this){_,data-> view_pager.setCurrentItem((data?.schedule?:1)-1,false) if (view_pager.currentItem != 0) tv_last.visible() totalCount = data?.answerNumber?:0 rightCount = data?.correctNumber?:0 + EventBus.getDefault().post(EmptyEvent(Const.EventCode.RECOVERD)) + recoverd = true } } -- Gitblit v1.7.1