From a034e242fe844a1ca45d2a28710cb7face1f8fe6 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期日, 28 四月 2024 19:07:56 +0800 Subject: [PATCH] 2024年04月28日19:07:49 --- app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java | 44 +++++++++++++++++++++++--------------------- 1 files changed, 23 insertions(+), 21 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java index 2a101f7..e42864b 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java @@ -43,7 +43,9 @@ private MessageAdapter messageRecoverAdapter; private int currentPage = 0; // 褰撳墠椤电爜 - private int total = 0; // 鏈�鍚庨〉鐮� + private int currentTotal = 0; // 鎬婚〉鐮� + + private int totalCount = 0;//娑堟伅鏁伴噺鎬绘暟 private boolean isLoadingMore = false; // 鏍囪姝e湪鍔犺浇鏇村鏁版嵁 @@ -57,18 +59,21 @@ @Override public void onBindView(Bundle savedInstanceState) { - - //鍒濆鍖栨暟鎹� -// initData(); //鍒濆鍖栫晫闈� initView(); //鍒濆鍖栫洃鍚櫒 initEvent(); + //杩涙潵璇诲彇涓�娆℃暟鎹�(涓轰簡鏇存柊currentPage锛宑urrentTotal杩欎釜鍊�) + loadNextPageRecoverMessageList(1, true); } - private void initData() { + /** + * 鏇存柊鏈湴缂撳瓨鏁版嵁 + */ + private void updatelocalityCacheData() { mList.clear(); mList.addAll(HdlMessageLogic.getInstance().getRecoverMessageMemoryList()); + } private void initEvent() { @@ -78,9 +83,9 @@ @Override public void onRefresh() { viewBinding.messageRecoverSrl.setRefreshing(false); -// mList.clear();//琛ㄧず寮哄埗閲嶆柊璇锋眰娑堟伅鍒楄〃 -// updateListData();//娓呯┖涔嬪墠缂撳瓨,鍥犱负閬囧埌涓�涓棶棰樼寷鎷夌殑鏃跺�欐姤閿�; -// getRecoverMessageList(false); + mList.clear();//琛ㄧず寮哄埗閲嶆柊璇锋眰绗竴椤垫秷鎭垪琛� + HdlMessageLogic.getInstance().clearListMessage();//琛ㄧず寮哄埗娓呯┖鎵�鏈夌紦瀛樹俊鎭� + loadNextPageRecoverMessageList(1, true); } }); messageRecoverAdapter.setNoOnclickListener(new MessageAdapter.OnclickListener() { @@ -135,14 +140,13 @@ HdlThreadLogic.runMainThread(new Runnable() { @Override public void run() { - //鏇存柊缂撳瓨鏁版嵁 - initData(); + //鏇存柊鏈湴缂撳瓨鏁版嵁 + updatelocalityCacheData(); //鍒锋柊鍒楄〃 if (messageRecoverAdapter != null) { messageRecoverAdapter.setList(mList); messageRecoverAdapter.notifyDataSetChanged(); } - //鍒锋柊銆愬凡鎭㈠銆戜俊鎭暟閲忔�绘暟 refreshRecoverCount(); //鏄剧ず娌℃暟鎹甎i鏍峰紡 @@ -162,15 +166,14 @@ //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢 if (eventBus.getTopic().equals(ConstantManage.message_function_tab_switch)) { if (eventBus.getType().equals(MessageFunctionTabSwitch.recover.toString())) { - initData(); - loadNextPageRecoverMessageList(1, true); // 鍙栨秷绮樻�т簨浠� EventBus.getDefault().removeStickyEvent(eventBus); } } else if (eventBus.getTopic().equals(ConstantManage.message_function_push_post)) { if (eventBus.getType().equals(MessageStateType.processed)) { //娑堟伅璇︽儏鍥炶皟 - initData(); + updatelocalityCacheData(); + ++totalCount; updateListData(); } @@ -184,11 +187,9 @@ * @param isShowLoading 鏄惁鍚姩鍔犺浇妗� true鍚姩 */ private void loadNextPageRecoverMessageList(int pageNo, boolean isShowLoading) { - if (pageNo == 1 && mList.size() > 0) { - //缂撳瓨鏁版嵁娌℃湁鎵嶅彲浠ヨ鍙栫涓�椤� - return; - } - if (currentPage > total) { + //绗竴椤佃鍙栨暟鎹己鍒惰 + if (pageNo > 1 && currentPage > currentTotal) { + --currentPage; //褰撳墠椤典笉鑳藉ぇ浜庢�婚〉鏁� return; } @@ -200,8 +201,9 @@ @Override public void onSuccess(HdlMessageLogic.MessageListClass messageListClass) { if (messageListClass != null) { - total = (int) messageListClass.getTotalPage(); + currentTotal = (int) messageListClass.getTotalPage(); currentPage = (int) messageListClass.getPageNo(); + totalCount = (int) messageListClass.getTotalCount(); updateListData(); } isLoadingMore = false; @@ -235,7 +237,7 @@ if (textView != null) { textView.setText(getText(R.string.message_recover)); if (mList.size() > 0) { - String s = getText(R.string.message_recover) + "(" + mList.size() + ")"; + String s = getText(R.string.message_recover) + "(" + totalCount + ")"; textView.setText(s); } } -- Gitblit v1.8.0