From 109ffe9a777658936a38d0c146579a67c60a0d17 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期四, 11 五月 2017 17:48:48 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInLeftVisitor.java |   32 +++++++++-----------------------
 1 files changed, 9 insertions(+), 23 deletions(-)

diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInLeftVisitor.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInLeftVisitor.java
index 7aac8fd..8523605 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInLeftVisitor.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInLeftVisitor.java
@@ -1,6 +1,7 @@
 package cn.com.basic.face.widget.checkin;
 
 import android.content.Context;
+import android.os.Parcelable;
 import android.support.v7.widget.RecyclerView;
 import android.util.AttributeSet;
 
@@ -17,6 +18,7 @@
 
     private CheckInFragment.CheckInLeftVisitorAdapter adapter = new CheckInFragment.CheckInLeftVisitorAdapter();
     private List list = new ArrayList();
+    private Parcelable recyclerViewState;
 
     public void setAdapter(Context context) {
         setAdapter(adapter);
@@ -37,31 +39,15 @@
         setAdapter(context);
     }
 
-    public void show(List list, boolean append) {
-        refresh(list, append);
-    }
-
-    public void refresh(List theNewList, boolean append) {
-        if (append) {
-            List oldList = adapter.getList();
-            List newList = new ArrayList();
-            if (oldList.size() > 0 &&  oldList.get(oldList.size()-1) instanceof Integer &&
-                    ((int)oldList.get(oldList.size()-1))== CommonVariables.Page.hasMorePages) {
-                oldList.remove(oldList.size() - 1);
-            }
-            if (oldList.size() > 0 &&  oldList.get(oldList.size()-1) instanceof
-                    Integer && ((int)oldList.get(oldList.size()-1))== CommonVariables.Page.noMorePage) {
-                oldList.remove(oldList.size() - 1);
-            }
-            if (oldList.size() > 0) {
-                this.scrollToPosition(oldList.size()-1);
-            }
-            oldList.addAll(theNewList);
-        } else {
-            adapter.setList(theNewList);
-        }
+    public void show(List list) {
+        recyclerViewState = this.getLayoutManager().onSaveInstanceState();
+        adapter.setList(list);
         this.setAdapter(adapter);
         adapter.notifyDataSetChanged();
+        this.getLayoutManager().onRestoreInstanceState(recyclerViewState);
     }
 
+    public List getPrevList() {
+        return adapter.getList();
+    }
 }

--
Gitblit v1.8.0