From 48bd94f4e362c8a604017cbaf4c12e08be10c816 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期五, 10 五月 2024 17:25:37 +0800
Subject: [PATCH] 2024年05月10日17:25:30
---
app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java | 62 +++++++++++++++----------------
1 files changed, 30 insertions(+), 32 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 594b114..0c39ece 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,7 @@
private MessageAdapter messageRecoverAdapter;
private int currentPage = 0; // 褰撳墠椤电爜
- private int total = 0; // 鏈�鍚庨〉鐮�
+ private int currentTotal = 0; // 鎬婚〉鐮�
private int totalCount = 0;//娑堟伅鏁伴噺鎬绘暟
@@ -59,16 +59,18 @@
@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());
@@ -81,23 +83,23 @@
@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() {
- @Override
- public void onClick(int position, MessageBean item) {
- if (position < 0 || position > mList.size()) {
- return;
- }
- Intent intent = new Intent();
- intent.putExtra("msgId", item.getMsgId().toString());
- intent.setClass(_mActivity, MessageInfoActivity.class);
- startActivity(intent);
- }
- });
+// messageRecoverAdapter.setNoOnclickListener(new MessageAdapter.OnclickListener() {
+// @Override
+// public void onClick(int position, MessageBean item) {
+// if (position < 0 || position > mList.size()) {
+// return;
+// }
+// Intent intent = new Intent();
+// intent.putExtra("msgId", item.getMsgId().toString());
+// intent.setClass(_mActivity, MessageInfoActivity.class);
+// startActivity(intent);
+// }
+// });
viewBinding.messageRecoverRecyclerview.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
@@ -125,7 +127,7 @@
private void initView() {
viewBinding.messageRecoverRecyclerview.setLayoutManager(new LinearLayoutManager(_mActivity));
- messageRecoverAdapter = new MessageAdapter(this.mList, _mActivity);
+ messageRecoverAdapter = new MessageAdapter(_mActivity);
viewBinding.messageRecoverRecyclerview.setAdapter(messageRecoverAdapter);
}
@@ -138,8 +140,8 @@
HdlThreadLogic.runMainThread(new Runnable() {
@Override
public void run() {
- //鏇存柊缂撳瓨鏁版嵁
- initData();
+ //鏇存柊鏈湴缂撳瓨鏁版嵁
+ updatelocalityCacheData();
//鍒锋柊鍒楄〃
if (messageRecoverAdapter != null) {
messageRecoverAdapter.setList(mList);
@@ -164,15 +166,13 @@
//鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢
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();
@@ -187,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;
}
@@ -203,7 +201,7 @@
@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();
--
Gitblit v1.8.0