Parcourir la source

修复审核中心中可能因为服务器数据问题导致出现多条底线的bug

(cherry picked from commit dbdcec5)
zengjiebin il y a 7 ans
Parent
commit
3427d61de3

+ 13 - 0
app/src/main/java/com/sheep/gamegroup/util/ListUtil.java

@@ -114,6 +114,19 @@ public class ListUtil {
             list.set(position, t);
     }
 
+    /**
+     * 清除末尾的空数据
+     * @param list
+     */
+    public static <T> void removeNull(List<T> list) {
+        removeItem(list, new CallBack<T, Boolean>() {
+            @Override
+            public Boolean call(T t) {
+                return t == null;
+            }
+        });
+    }
+
     public static interface CallBack<I, R>{
         public R call(I i);
     }

+ 9 - 6
app/src/main/java/com/sheep/gamegroup/view/fragment/FgtAudit.java

@@ -11,6 +11,7 @@ import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.TaskAcceptedEty;
 import com.sheep.gamegroup.util.CommonUtil;
 import com.sheep.gamegroup.util.ListUtil;
+import com.sheep.gamegroup.util.LogUtil;
 import com.sheep.gamegroup.view.adapter.TaskListItemAdp;
 import com.sheep.gamegroup.view.customview.RefreshLayout;
 import com.sheep.jiuyan.samllsheep.R;
@@ -114,14 +115,16 @@ public class FgtAudit extends BaseFragment {
             CommonUtil.getInstance().getAudit(new Action1<BaseMessage>() {
                 @Override
                 public void call(BaseMessage baseMessage) {
-                    int count = 0;
                     if(baseMessage != null){
                         List<TaskAcceptedEty> releaseEtyList = baseMessage.getDataList(TaskAcceptedEty.class);
-                        count = ListUtil.addAll(etyList, releaseEtyList);
-                    }
-                    if(count < per_page){//添加最后一条底线
-                        if(!etyList.isEmpty())
-                            etyList.add(null);
+                        ListUtil.removeNull(etyList);
+                        ListUtil.addAll(etyList, releaseEtyList);
+//                        int count = ListUtil.addAll(etyList, releaseEtyList);
+//                        LogUtil.println("FgtAuditAddLine", count, ListUtil.size(releaseEtyList));
+                        if(ListUtil.size(releaseEtyList) < per_page){//添加最后一条底线
+                            if(!etyList.isEmpty())
+                                etyList.add(null);
+                        }
                     }
                     notifyDataSetChanged();
                 }