Browse Source

1.添加收到IM消息展示弹窗功能

王鹏鹏 2 years ago
parent
commit
541746846d

+ 15 - 3
baselib/src/main/java/com/yingyangfly/baselib/base/BaseFragmentActivity.kt

@@ -22,11 +22,10 @@ import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener
 import com.yingyangfly.baselib.R
 import com.yingyangfly.baselib.databinding.ActivityBaseBinding
 import com.yingyangfly.baselib.dialog.LoadingDialog
+import com.yingyangfly.baselib.dialog.TaskFragment
 import com.yingyangfly.baselib.ext.getDbClass
 import com.yingyangfly.baselib.ext.initBar
-import com.yingyangfly.baselib.utils.ActivityManagers
-import com.yingyangfly.baselib.utils.ResUtil
-import com.yingyangfly.baselib.utils.ViewTool
+import com.yingyangfly.baselib.utils.*
 import gorden.rxbus2.RxBus
 
 
@@ -88,6 +87,7 @@ abstract class BaseFragmentActivity<DB : ViewDataBinding> : FragmentActivity(),
         initViews()
         initListener()
         initData()
+        initLiveEventBusUtil()
     }
 
     protected inline fun binding(block: DB.() -> Unit): DB {
@@ -298,6 +298,18 @@ abstract class BaseFragmentActivity<DB : ViewDataBinding> : FragmentActivity(),
         }
     }
 
+    private fun initLiveEventBusUtil() {
+        //展示任务弹窗
+        LiveEventBusUtil.observer<String>(this, RxBusCodes.SHOWTASKDIALOG) {
+            val taskFragment = TaskFragment()
+            taskFragment.setTaskDesn(it, "")
+            taskFragment.onDialogClickListener = {
+
+            }
+            taskFragment.show(supportFragmentManager, "taskFragment")
+        }
+    }
+
 //    override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
 //        if (keyCode == KeyEvent.KEYCODE_BACK) {
 //            return true;

+ 19 - 1
home/src/main/java/com/yingyangfly/home/activity/HomeActivity.kt

@@ -631,6 +631,16 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>(),
                 }
             }
         }
+
+        //移除消息监听
+        LiveEventBusUtil.observer<String>(this, RxBusCodes.REMOVEIMMSGLISTENER) {
+            removeAdvancedMsgListener()
+        }
+
+        //添加消息监听
+        LiveEventBusUtil.observer<String>(this, RxBusCodes.ADDIMMSGLISTENER) {
+            addSimpleMsgListener()
+        }
     }
 
     /**
@@ -726,8 +736,16 @@ class HomeActivity : BaseMVVMActivity<ActivityHomeBinding, HomeViewModel>(),
             } else if (msg.elemType == V2TIMMessage.V2TIM_ELEM_TYPE_TEXT) {
                 val textElem: V2TIMTextElem = msg.textElem
                 val text: String = textElem.text
-                Log.e("wpp", "text:" + text)
+                LiveEventBusUtil.send(RxBusCodes.SHOWTASKDIALOG, text)
             }
         }
     }
+
+    /**
+     * 移除消息监听
+     */
+    private fun removeAdvancedMsgListener() {
+        //消息接受监听
+        V2TIMManager.getMessageManager().removeAdvancedMsgListener(simpleMsgListener)
+    }
 }