소스 검색

修复bug

Pq 3 년 전
부모
커밋
c15321fbec

+ 2 - 2
student/src/main/java/com/cooleshow/student/adapter/MessageBoxAdapter.java

@@ -24,8 +24,8 @@ import java.util.List;
  */
 public class MessageBoxAdapter extends BaseQuickAdapter<SystemMessageBean.RowsBean, BaseViewHolder> implements LoadMoreModule {
 
-    public MessageBoxAdapter(List<SystemMessageBean.RowsBean> data) {
-        super(R.layout.layout_message_nox_item, data);
+    public MessageBoxAdapter() {
+        super(R.layout.layout_message_nox_item);
     }
 
 

+ 11 - 9
student/src/main/java/com/cooleshow/student/ui/message/MessageBoxActivity.java

@@ -52,7 +52,7 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
     public void onClick(View view) {
         switch (view.getId()) {
             case R.id.cl_all:
-                if (group.equals("")){
+                if (group.equals("")) {
                     break;
                 }
                 group = "";
@@ -62,7 +62,7 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
                 queryList(true);
                 break;
             case R.id.cl_course:
-                if (group.equals("COURSE")){
+                if (group.equals("COURSE")) {
                     break;
                 }
                 group = "COURSE";
@@ -72,7 +72,7 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
                 queryList(true);
                 break;
             case R.id.cl_system:
-                if (group.equals("SYSTEM")){
+                if (group.equals("SYSTEM")) {
                     break;
                 }
                 group = "SYSTEM";
@@ -101,7 +101,6 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
     }
 
     private MessageBoxAdapter messageBoxAdapter;
-    List<SystemMessageBean.RowsBean> dataList = new ArrayList<>();
 
     @Override
     protected void initView() {
@@ -121,7 +120,7 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
         RecyclerView rvAddress = viewBinding.recyclerView;
         LinearLayoutManager manager = new LinearLayoutManager(this);
         rvAddress.setLayoutManager(manager);
-        messageBoxAdapter = new MessageBoxAdapter(dataList);
+        messageBoxAdapter = new MessageBoxAdapter();
         LayoutInflater inflater = LayoutInflater.from(this);
         View emptyLayout = inflater.inflate(R.layout.layout_empty_conent, null);
         ImageView im_empty_logo = emptyLayout.findViewById(R.id.im_empty_logo);
@@ -191,15 +190,18 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
     public void sysMessageListSuccess(int page, SystemMessageBean data) {
         if (data != null) {
             if (page == 1) {
-                dataList.clear();
+                messageBoxAdapter.getData().clear();
+                messageBoxAdapter.notifyDataSetChanged();
                 viewBinding.refreshLayout.finishRefresh();
                 if (data.rows != null && data.rows.size() > 0) {
                     checkHasNext(data.rows.size());
-                    dataList.addAll(data.rows);
+                    messageBoxAdapter.setNewInstance(data.rows);
+                }else{
+                    messageBoxAdapter.notifyDataSetChanged();
                 }
-                messageBoxAdapter.notifyDataSetChanged();
             } else {
                 if (data.rows != null && data.rows.size() > 0) {
+                    messageBoxAdapter.addData(data.rows);
                     messageBoxAdapter.getLoadMoreModule().loadMoreComplete();
                     checkHasNext(data.rows.size());
                 } else {
@@ -239,7 +241,7 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
 
     @Override
     public void setCurrentReadSuccess(long id) {
-        for (SystemMessageBean.RowsBean rowsBean : dataList) {
+        for (SystemMessageBean.RowsBean rowsBean : messageBoxAdapter.getData()) {
             if (rowsBean.id == id) {
                 rowsBean.readStatus = 1;
                 break;

+ 2 - 2
teacher/src/main/java/com/cooleshow/teacher/adapter/MessageBoxAdapter.java

@@ -24,8 +24,8 @@ import java.util.List;
  */
 public class MessageBoxAdapter extends BaseQuickAdapter<SystemMessageBean.RowsBean, BaseViewHolder> implements LoadMoreModule {
 
-    public MessageBoxAdapter(List<SystemMessageBean.RowsBean> data) {
-        super(R.layout.layout_message_nox_item, data);
+    public MessageBoxAdapter() {
+        super(R.layout.layout_message_nox_item);
     }
 
 

+ 10 - 6
teacher/src/main/java/com/cooleshow/teacher/ui/message/MessageBoxActivity.java

@@ -21,6 +21,7 @@ import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.activity.BaseMVPActivity;
 import com.cooleshow.base.utils.GsonUtils;
 import com.cooleshow.base.utils.JumpUtils;
+import com.cooleshow.base.utils.LogUtils;
 import com.cooleshow.teacher.R;
 import com.cooleshow.teacher.adapter.MessageBoxAdapter;
 import com.cooleshow.teacher.bean.CountOfUnreadBean;
@@ -103,7 +104,7 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
     }
 
     private MessageBoxAdapter messageBoxAdapter;
-    List<SystemMessageBean.RowsBean> dataList = new ArrayList<>();
+//    List<SystemMessageBean.RowsBean> dataList = new ArrayList<>();
 
     @Override
     protected void initView() {
@@ -123,7 +124,7 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
         RecyclerView rvAddress = viewBinding.recyclerView;
         LinearLayoutManager manager = new LinearLayoutManager(this);
         rvAddress.setLayoutManager(manager);
-        messageBoxAdapter = new MessageBoxAdapter(dataList);
+        messageBoxAdapter = new MessageBoxAdapter();
         LayoutInflater inflater = LayoutInflater.from(this);
         View emptyLayout = inflater.inflate(R.layout.layout_empty_conent, null);
         ImageView im_empty_logo = emptyLayout.findViewById(R.id.im_empty_logo);
@@ -194,15 +195,18 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
     public void sysMessageListSuccess(int page, SystemMessageBean data) {
         if (data != null) {
             if (page == 1) {
-                dataList.clear();
                 viewBinding.refreshLayout.finishRefresh();
+                messageBoxAdapter.getData().clear();
+                messageBoxAdapter.notifyDataSetChanged();
                 if (data.rows != null && data.rows.size() > 0) {
                     checkHasNext(data.rows.size());
-                    dataList.addAll(data.rows);
+                    messageBoxAdapter.setNewInstance(data.rows);
+                } else {
+                    messageBoxAdapter.notifyDataSetChanged();
                 }
-                messageBoxAdapter.notifyDataSetChanged();
             } else {
                 if (data.rows != null && data.rows.size() > 0) {
+                    messageBoxAdapter.addData(data.rows);
                     messageBoxAdapter.getLoadMoreModule().loadMoreComplete();
                     checkHasNext(data.rows.size());
                 } else {
@@ -242,7 +246,7 @@ public class MessageBoxActivity extends BaseMVPActivity<ActivityMessageBoxBindin
 
     @Override
     public void setCurrentReadSuccess(long id) {
-        for (SystemMessageBean.RowsBean rowsBean : dataList) {
+        for (SystemMessageBean.RowsBean rowsBean : messageBoxAdapter.getData()) {
             if (rowsBean.id == id) {
                 rowsBean.readStatus = 1;
                 break;