|
@@ -2,14 +2,15 @@ package com.yingyangfly.home.activity
|
|
|
|
|
|
import android.annotation.SuppressLint
|
|
|
import android.text.TextUtils
|
|
|
+import android.view.MotionEvent
|
|
|
+import android.view.View
|
|
|
import androidx.recyclerview.widget.GridLayoutManager
|
|
|
import com.alibaba.android.arouter.facade.annotation.Route
|
|
|
+import com.yingyang.home.R
|
|
|
import com.yingyang.home.databinding.ActivityHomeBinding
|
|
|
import com.yingyangfly.baselib.dialog.TaskFragment
|
|
|
import com.yingyangfly.baselib.dialog.TipsDialog
|
|
|
-import com.yingyangfly.baselib.ext.setOnSingleClickListener
|
|
|
-import com.yingyangfly.baselib.ext.show
|
|
|
-import com.yingyangfly.baselib.ext.toast
|
|
|
+import com.yingyangfly.baselib.ext.*
|
|
|
import com.yingyangfly.baselib.guideview.Guide
|
|
|
import com.yingyangfly.baselib.guideview.GuideBuilder
|
|
|
import com.yingyangfly.baselib.mvvm.BaseMVVMActivity
|
|
@@ -23,14 +24,15 @@ import com.yingyangfly.home.component.ShowFunTimeViewComponent
|
|
|
import com.yingyangfly.home.component.ShowHealthCounselingViewComponent
|
|
|
import com.yingyangfly.home.component.ShowPlayPorpoiseViewComponent
|
|
|
import com.yingyangfly.home.component.ShowProfessionalEvaluationViewComponent
|
|
|
-import com.yingyangfly.home.dialog.DownlaodAppFragment
|
|
|
+import com.yingyangfly.home.dialog.DownLoadAppFragment
|
|
|
import com.yingyangfly.home.entity.Record
|
|
|
|
|
|
/**
|
|
|
* 新版首页
|
|
|
*/
|
|
|
@Route(path = RouterUrlCommon.home)
|
|
|
-class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>() {
|
|
|
+class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>(),
|
|
|
+ View.OnTouchListener {
|
|
|
|
|
|
/**
|
|
|
* 进行中的任务
|
|
@@ -64,11 +66,10 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>() {
|
|
|
.leftBtnText("取消")
|
|
|
.rightBtnText("确定")
|
|
|
.leftClick({
|
|
|
- null
|
|
|
+
|
|
|
}, true)
|
|
|
.rightClick({
|
|
|
jumpWebView(it, true)
|
|
|
- null
|
|
|
}, true)
|
|
|
.show(supportFragmentManager)
|
|
|
} else {
|
|
@@ -78,76 +79,33 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @SuppressLint("ClickableViewAccessibility")
|
|
|
override fun initListener() {
|
|
|
binding {
|
|
|
//用户头像
|
|
|
- imageSetting.setOnSingleClickListener {
|
|
|
- JumpUtil.jumpActivity(RouterUrlCommon.personalCenter, mContext)
|
|
|
- }
|
|
|
+ imageSetting.setOnTouchListener(this@HomeActivity)
|
|
|
//直播
|
|
|
- layoutLiveBroadcast.setOnSingleClickListener {
|
|
|
- JumpUtil.jumpActivity(RouterUrlCommon.liveBroadcastList, mContext)
|
|
|
- }
|
|
|
+ layoutLiveBroadcast.setOnTouchListener(this@HomeActivity)
|
|
|
//使用帮助
|
|
|
- layoutHelp.setOnSingleClickListener {
|
|
|
- JumpUtil.jumpActivity(RouterUrlCommon.help, mContext)
|
|
|
- }
|
|
|
+ layoutHelp.setOnTouchListener(this@HomeActivity)
|
|
|
//消息通知
|
|
|
- layoutNotify.setOnSingleClickListener {
|
|
|
- JumpUtil.jumpActivity(RouterUrlCommon.messageList, mContext)
|
|
|
- }
|
|
|
+ layoutNotify.setOnTouchListener(this@HomeActivity)
|
|
|
//服务套餐
|
|
|
- layoutServicePackage.setOnSingleClickListener {
|
|
|
- JumpUtil.jumpActivity(RouterUrlCommon.servicePackage, mContext)
|
|
|
- }
|
|
|
+ layoutServicePackage.setOnTouchListener(this@HomeActivity)
|
|
|
//畅玩蓝豚
|
|
|
- tvPlayPorpoise.setOnSingleClickListener {
|
|
|
- JumpUtil.jumpActivity(RouterUrlCommon.freeTrain, mContext)
|
|
|
- }
|
|
|
+ tvPlayPorpoise.setOnTouchListener(this@HomeActivity)
|
|
|
//专业测评
|
|
|
- tvProfessionalEvaluation.setOnSingleClickListener {
|
|
|
- JumpUtil.jumpActivity(RouterUrlCommon.evaluation, mContext)
|
|
|
- }
|
|
|
+ tvProfessionalEvaluation.setOnTouchListener(this@HomeActivity)
|
|
|
//健康咨询
|
|
|
- tvHealthCounseling.setOnSingleClickListener {
|
|
|
- "该功能正在开发中,敬请期待".toast()
|
|
|
- }
|
|
|
+ tvHealthCounseling.setOnTouchListener(this@HomeActivity)
|
|
|
//康复课堂
|
|
|
- tvfunTime.setOnSingleClickListener {
|
|
|
- JumpUtil.jumpActivity(RouterUrlCommon.leisureBrain, mContext)
|
|
|
- }
|
|
|
+ tvfunTime.setOnTouchListener(this@HomeActivity)
|
|
|
//查看
|
|
|
- btnCheck.setOnSingleClickListener {
|
|
|
- JumpUtil.jumpActivity(RouterUrlCommon.trainData, mContext)
|
|
|
- }
|
|
|
+ btnCheck.setOnTouchListener(this@HomeActivity)
|
|
|
//下一页
|
|
|
- btnNextPage.setOnSingleClickListener {
|
|
|
- pageList.clear()
|
|
|
- if (isFirstPage) {
|
|
|
- btnNextPage.text = "上一页"
|
|
|
- isFirstPage = false
|
|
|
- pageList.addAll(gameList.subList(4, gameList.size))
|
|
|
- } else {
|
|
|
- btnNextPage.text = "下一页"
|
|
|
- isFirstPage = true
|
|
|
- pageList.addAll(gameList.subList(0, 4))
|
|
|
- }
|
|
|
- gameAdapter.setData(pageList)
|
|
|
- }
|
|
|
+ btnNextPage.setOnTouchListener(this@HomeActivity)
|
|
|
//开始专属训练
|
|
|
- btnTask.setOnSingleClickListener {
|
|
|
- if (currentTaskRecord != null) {
|
|
|
- currentTaskRecord.let {
|
|
|
- val str =
|
|
|
- it?.gameUrl + "?gameCode=" + it?.gameCode + "&isFull=true&isSound=true&playClass=A" + "&userToken=" + User.getToken()
|
|
|
- JumpUtil.jumpActivityWithUrl(
|
|
|
- RouterUrlCommon.WEB_VIEW_INTERACTION_JS,
|
|
|
- str,
|
|
|
- mContext
|
|
|
- )
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ btnTask.setOnTouchListener(this@HomeActivity)
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -174,9 +132,9 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>() {
|
|
|
launchTask()
|
|
|
}, success = {
|
|
|
if (it != null) {
|
|
|
- val downlaodAppFragment = DownlaodAppFragment()
|
|
|
- downlaodAppFragment.setDownloadUrl(mContext, it.versionUrl)
|
|
|
- downlaodAppFragment.show(supportFragmentManager, "downlaodAppFragment")
|
|
|
+ val downLoadAppFragment = DownLoadAppFragment()
|
|
|
+ downLoadAppFragment.setDownloadUrl(mContext, it.versionUrl)
|
|
|
+ downLoadAppFragment.show(supportFragmentManager, "downLoadAppFragment")
|
|
|
} else {
|
|
|
launchTask()
|
|
|
}
|
|
@@ -190,9 +148,9 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>() {
|
|
|
//获取任务列表
|
|
|
getFindMyTask()
|
|
|
if (TextUtils.equals("0", User.getFirstLogin())) {
|
|
|
- val taskDesn =
|
|
|
+ val content =
|
|
|
"欢迎" + User.getName() + "使用未来蓝豚康复平台!为您提供专业的认知康复支持和训练。帮助您提升认知能力,重建自信。小豚期待与您一同启程!"
|
|
|
- showTaskDialog(taskDesn, "")
|
|
|
+ showTaskDialog(content, "")
|
|
|
} else {
|
|
|
//获取任务状态弹窗
|
|
|
getSelectHomePageMsg()
|
|
@@ -252,7 +210,7 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>() {
|
|
|
showLayout(false)
|
|
|
it!![0].let {
|
|
|
binding.task = it
|
|
|
- if (it.details.isNullOrEmpty().not()) {
|
|
|
+ if (it.details.isEmpty().not()) {
|
|
|
val index = it.currentTaskNum - 1
|
|
|
currentTaskRecord = it.details[index]
|
|
|
taskList.addAll(it.details)
|
|
@@ -325,11 +283,11 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>() {
|
|
|
/**
|
|
|
* 欢迎/确定信息弹窗
|
|
|
*/
|
|
|
- private fun showTaskDialog(taskDesn: String, id: String) {
|
|
|
+ private fun showTaskDialog(content: String, id: String) {
|
|
|
val taskFragment = TaskFragment()
|
|
|
- taskFragment.setTaskDesn(taskDesn, id)
|
|
|
+ taskFragment.setTaskDesn(content, id)
|
|
|
taskFragment.onDialogClickListener = {
|
|
|
- if (id.isNullOrEmpty()) {
|
|
|
+ if (id.isEmpty()) {
|
|
|
if (TextUtils.equals("0", User.getFirstLogin())) {
|
|
|
//第一次登录弹窗欢迎
|
|
|
User.saveFirstLogin("1")
|
|
@@ -500,4 +458,102 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>() {
|
|
|
}
|
|
|
super.onDestroy()
|
|
|
}
|
|
|
+
|
|
|
+ @SuppressLint("ClickableViewAccessibility")
|
|
|
+ override fun onTouch(v: View, event: MotionEvent): Boolean {
|
|
|
+ when (event.action) {
|
|
|
+ MotionEvent.ACTION_DOWN -> {
|
|
|
+ if (v.id == R.id.imageSetting || v.id == R.id.layoutLiveBroadcast || v.id == R.id.layoutHelp ||
|
|
|
+ v.id == R.id.layoutNotify || v.id == R.id.layoutServicePackage || v.id == R.id.tvPlayPorpoise ||
|
|
|
+ v.id == R.id.tvProfessionalEvaluation || v.id == R.id.tvHealthCounseling || v.id == R.id.tvfunTime ||
|
|
|
+ v.id == R.id.btnCheck || v.id == R.id.btnNextPage || v.id == R.id.btnTask
|
|
|
+ ) {
|
|
|
+ v.startAnimation(getScaleAnimation())
|
|
|
+ }
|
|
|
+ }
|
|
|
+ MotionEvent.ACTION_UP -> {
|
|
|
+ v.startAnimation(getEndAnimation())
|
|
|
+ when (v.id) {
|
|
|
+ R.id.imageSetting -> {
|
|
|
+ //用户头像
|
|
|
+ JumpUtil.jumpActivity(RouterUrlCommon.personalCenter, mContext)
|
|
|
+ }
|
|
|
+ R.id.layoutLiveBroadcast -> {
|
|
|
+ //直播
|
|
|
+ JumpUtil.jumpActivity(RouterUrlCommon.liveBroadcastList, mContext)
|
|
|
+ }
|
|
|
+ R.id.layoutHelp -> {
|
|
|
+ //使用帮助
|
|
|
+ JumpUtil.jumpActivity(RouterUrlCommon.help, mContext)
|
|
|
+ }
|
|
|
+ R.id.layoutNotify -> {
|
|
|
+ //消息通知
|
|
|
+ JumpUtil.jumpActivity(RouterUrlCommon.messageList, mContext)
|
|
|
+ }
|
|
|
+ R.id.layoutServicePackage -> {
|
|
|
+ //服务套餐
|
|
|
+ JumpUtil.jumpActivity(RouterUrlCommon.servicePackage, mContext)
|
|
|
+ }
|
|
|
+ R.id.tvPlayPorpoise -> {
|
|
|
+ //畅玩蓝豚
|
|
|
+ JumpUtil.jumpActivity(RouterUrlCommon.freeTrain, mContext)
|
|
|
+ }
|
|
|
+ R.id.tvProfessionalEvaluation -> {
|
|
|
+ //专业测评
|
|
|
+ JumpUtil.jumpActivity(RouterUrlCommon.evaluation, mContext)
|
|
|
+ }
|
|
|
+ R.id.tvHealthCounseling -> {
|
|
|
+ //健康咨询
|
|
|
+ "该功能正在开发中,敬请期待".toast()
|
|
|
+ }
|
|
|
+ R.id.tvfunTime -> {
|
|
|
+ //康复课堂
|
|
|
+ JumpUtil.jumpActivity(RouterUrlCommon.leisureBrain, mContext)
|
|
|
+ }
|
|
|
+ R.id.btnCheck -> {
|
|
|
+ //查看
|
|
|
+ JumpUtil.jumpActivity(RouterUrlCommon.trainData, mContext)
|
|
|
+ }
|
|
|
+ R.id.btnNextPage -> {
|
|
|
+ //下一页
|
|
|
+ pageList.clear()
|
|
|
+ if (isFirstPage) {
|
|
|
+ binding.btnNextPage.text = "上一页"
|
|
|
+ isFirstPage = false
|
|
|
+ pageList.addAll(gameList.subList(4, gameList.size))
|
|
|
+ } else {
|
|
|
+ binding.btnNextPage.text = "下一页"
|
|
|
+ isFirstPage = true
|
|
|
+ pageList.addAll(gameList.subList(0, 4))
|
|
|
+ }
|
|
|
+ gameAdapter.setData(pageList)
|
|
|
+ }
|
|
|
+ R.id.btnTask -> {
|
|
|
+ //开始专属训练
|
|
|
+ if (currentTaskRecord != null) {
|
|
|
+ currentTaskRecord.let {
|
|
|
+ val str =
|
|
|
+ it?.gameUrl + "?gameCode=" + it?.gameCode + "&isFull=true&isSound=true&playClass=A" + "&userToken=" + User.getToken()
|
|
|
+ JumpUtil.jumpActivityWithUrl(
|
|
|
+ RouterUrlCommon.WEB_VIEW_INTERACTION_JS,
|
|
|
+ str,
|
|
|
+ mContext
|
|
|
+ )
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ MotionEvent.ACTION_CANCEL -> {
|
|
|
+ if (v.id == R.id.imageSetting || v.id == R.id.layoutLiveBroadcast || v.id == R.id.layoutHelp ||
|
|
|
+ v.id == R.id.layoutNotify || v.id == R.id.layoutServicePackage || v.id == R.id.tvPlayPorpoise ||
|
|
|
+ v.id == R.id.tvProfessionalEvaluation || v.id == R.id.tvHealthCounseling || v.id == R.id.tvfunTime ||
|
|
|
+ v.id == R.id.btnCheck || v.id == R.id.btnNextPage || v.id == R.id.btnTask
|
|
|
+ ) {
|
|
|
+ v.startAnimation(getEndAnimation())
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return true
|
|
|
+ }
|
|
|
}
|