From 53cfbb7c949edc8e3d0b624e251afbad1a1c74ca Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期一, 08 一月 2024 18:03:18 +0800 Subject: [PATCH] 2024年01月08日18:03:16 --- app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java | 44 +++++++++++++++++++++++++++++++------------- 1 files changed, 31 insertions(+), 13 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 87bfa55..8efa489 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 @@ -15,12 +15,16 @@ import com.hdl.photovoltaic.databinding.FragmentMessageBinding; import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch; import com.hdl.photovoltaic.enums.MessageFunctionTabSwitch; +import com.hdl.photovoltaic.enums.MessageStateType; import com.hdl.photovoltaic.other.HdlCommonLogic; import com.hdl.photovoltaic.other.HdlLogLogic; +import com.hdl.photovoltaic.other.HdlMessageLogic; import com.hdl.photovoltaic.ui.bean.BUserInfo; 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; @@ -65,8 +69,9 @@ @Override public void onClick(View v) { currentIndex = 0; - showFragment(); initView(); + showFragment(); + postEventBus(MessageFunctionTabSwitch.nascent); } }); @@ -75,8 +80,9 @@ @Override public void onClick(View v) { currentIndex = 1; - showFragment(); initView(); + showFragment(); + postEventBus(MessageFunctionTabSwitch.recover); } }); @@ -86,8 +92,9 @@ @Override public void onClick(View v) { currentIndex = 2; - showFragment(); initView(); + showFragment(); + postEventBus(MessageFunctionTabSwitch.all); } }); } @@ -101,7 +108,6 @@ viewBinding.line1V.setVisibility(View.VISIBLE); viewBinding.line2V.setVisibility(View.GONE); viewBinding.line3V.setVisibility(View.GONE); - postEventBus(MessageFunctionTabSwitch.nascent); } else if (this.currentIndex == 1) { viewBinding.messageTabNascentTitleTv.setTextColor(getResources().getColor(R.color.text80_FFFFFF, null)); viewBinding.messageTabRecoverTitleTv.setTextColor(getResources().getColor(R.color.text_FFFFFFFF, null)); @@ -109,7 +115,6 @@ viewBinding.line1V.setVisibility(View.GONE); viewBinding.line2V.setVisibility(View.VISIBLE); viewBinding.line3V.setVisibility(View.GONE); - postEventBus(MessageFunctionTabSwitch.recover); } else if (this.currentIndex == 2) { viewBinding.messageTabNascentTitleTv.setTextColor(getResources().getColor(R.color.text80_FFFFFF, null)); viewBinding.messageTabRecoverTitleTv.setTextColor(getResources().getColor(R.color.text80_FFFFFF, null)); @@ -117,8 +122,8 @@ viewBinding.line1V.setVisibility(View.GONE); viewBinding.line2V.setVisibility(View.GONE); viewBinding.line3V.setVisibility(View.VISIBLE); - postEventBus(MessageFunctionTabSwitch.all); } + } private void initData() { @@ -133,7 +138,8 @@ BaseEventBus baseEventBus = new BaseEventBus(); baseEventBus.setTopic(ConstantManage.message_function_tab_switch); baseEventBus.setType(tabSwitch.toString()); - EventBus.getDefault().post(baseEventBus); + //鍙戦�佺矘鎬т簨浠�(濡傛灉涓嶅彂绮樻�т簨浠朵細閬囧埌涓�涓病鏈夊姞杞藉嚭鏉ョ殑纰庣墖鎺ユ敹涓嶅埌淇℃伅) + EventBus.getDefault().postSticky(baseEventBus); } @@ -164,8 +170,6 @@ fragmentList.add(mRecoverMessageFragment); fragmentList.add(mAllMessageFragment); showFragment(); - - } } @@ -185,6 +189,9 @@ } currentFragment = fragmentList.get(currentIndex); ft.commit(); + //鎶婂綋鍓嶆樉绀虹殑fragment璁板綍涓嬫潵 + currentFragment = fragmentList.get(currentIndex); + } @@ -201,20 +208,31 @@ } } ft.commit(); - //鎶婂綋鍓嶆樉绀虹殑fragment璁板綍涓嬫潵 - currentFragment = fragmentList.get(currentIndex); + } - - @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())) { + // 鍙栨秷绮樻�т簨浠� + EventBus.getDefault().removeStickyEvent(eventBus); postEventBus(MessageFunctionTabSwitch.nascent); HdlLogLogic.print("姝e湪鐐瑰嚮銆愭秷鎭��"); } + } else if (eventBus.getTopic().equals(ConstantManage.message_count)) { + if (eventBus.getType().equals(MessageStateType.untreated)) { + String s = getText(R.string.message_nascent) + "(" + HdlMessageLogic.getInstance().getNascentMessageMemoryList().size() + ")"; + viewBinding.messageTabNascentTitleTv.setText(s); + } else if (eventBus.getType().equals(MessageStateType.processed)) { + String s = getText(R.string.message_recover) + "(" + HdlMessageLogic.getInstance().getRecoverMessageMemoryList().size() + ")"; + viewBinding.messageTabRecoverTitleTv.setText(s); + } } } -- Gitblit v1.8.0