From d1ebb94e1a17b7c25d4fcf73d85345d92cc86b5c Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期二, 02 一月 2024 18:41:34 +0800 Subject: [PATCH] 2024年01月02日18:41:32 --- app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java | 25 +++++++++++++++---------- 1 files changed, 15 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java index ff6ccf9..026dfa0 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java @@ -21,6 +21,8 @@ import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus; import org.greenrobot.eventbus.EventBus; +import org.greenrobot.eventbus.Subscribe; +import org.greenrobot.eventbus.ThreadMode; import java.util.ArrayList; import java.util.List; @@ -67,6 +69,7 @@ currentIndex = 0; initView(); showFragment(); + postEventBus(MessageFunctionTabSwitch.nascent); } }); @@ -77,6 +80,7 @@ currentIndex = 1; initView(); showFragment(); + postEventBus(MessageFunctionTabSwitch.recover); } }); @@ -88,6 +92,7 @@ currentIndex = 2; initView(); showFragment(); + postEventBus(MessageFunctionTabSwitch.all); } }); } @@ -116,6 +121,7 @@ viewBinding.line2V.setVisibility(View.GONE); viewBinding.line3V.setVisibility(View.VISIBLE); } + } private void initData() { @@ -130,7 +136,8 @@ BaseEventBus baseEventBus = new BaseEventBus(); baseEventBus.setTopic(ConstantManage.message_function_tab_switch); baseEventBus.setType(tabSwitch.toString()); - EventBus.getDefault().post(baseEventBus); + //鍙戦�佺矘鎬т簨浠�(濡傛灉涓嶅彂绮樻�т簨浠朵細閬囧埌涓�涓病鏈夊姞杞藉嚭鏉ョ殑纰庣墖鎺ユ敹涓嶅埌淇℃伅) + EventBus.getDefault().postSticky(baseEventBus); } @@ -183,13 +190,6 @@ //鎶婂綋鍓嶆樉绀虹殑fragment璁板綍涓嬫潵 currentFragment = fragmentList.get(currentIndex); - if (this.currentIndex == 0) { - postEventBus(MessageFunctionTabSwitch.nascent); - } else if (this.currentIndex == 1) { - postEventBus(MessageFunctionTabSwitch.recover); - } else if (this.currentIndex == 2) { - postEventBus(MessageFunctionTabSwitch.all); - } } @@ -209,15 +209,20 @@ } - - @Override + @Subscribe(threadMode = ThreadMode.MAIN, sticky = true) public void onEventMessage(BaseEventBus eventBus) { super.onEventMessage(eventBus); + if (eventBus == null) { + return; + } //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢 if (eventBus.getTopic().equals(ConstantManage.homepage_title_tab_switch)) { if (eventBus.getType().equals(HomepageTitleTabSwitch.message.toString())) { postEventBus(MessageFunctionTabSwitch.nascent); HdlLogLogic.print("姝e湪鐐瑰嚮銆愭秷鎭��"); + // 鍙栨秷绮樻�т簨浠� + EventBus.getDefault().removeStickyEvent(eventBus); + } } } -- Gitblit v1.8.0