package cn.com.basic.face.widget.visit; import android.content.Context; import android.os.Parcelable; import android.util.AttributeSet; import com.camnter.easyrecyclerview.widget.EasyRecyclerView; import java.util.ArrayList; import java.util.List; import cn.com.basic.face.adapter.VisitFragment; import cn.com.basic.face.discern.common.CommonVariables; public class VisitLeftListView extends EasyRecyclerView { public static VisitFragment.VisitLeftAdapter adapter; public static Parcelable recyclerViewState; private void initView() { adapter = new VisitFragment.VisitLeftAdapter(); setAdapter(adapter); } public VisitLeftListView(Context context) { super(context); initView(); } public VisitLeftListView(Context context, AttributeSet attrs) { super(context, attrs); initView(); } public VisitLeftListView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); initView(); } public void show(List list, boolean append) { recyclerViewState = this.getLayoutManager().onSaveInstanceState(); if (append) { List newList = new ArrayList(); if (adapter.getList().size() > 0 && adapter.getList().get(adapter.getList().size()-1) instanceof Integer && ((int)adapter.getList().get(adapter.getList().size()-1))== CommonVariables.Page.hasMorePages) { adapter.getList().remove(adapter.getList().size() - 1); } if (adapter.getList().size() > 0 && adapter.getList().get(adapter.getList().size()-1) instanceof Integer && ((int)adapter.getList().get(adapter.getList().size()-1))== CommonVariables.Page.noMorePage) { adapter.getList().remove(adapter.getList().size() - 1); } newList.addAll(adapter.getList()); newList.addAll(list); adapter.setList(newList); } else { adapter.setList(list); } setAdapter(adapter); adapter.notifyDataSetChanged(); this.getLayoutManager().onRestoreInstanceState(recyclerViewState); } public List getPrevList() { return adapter.getList(); } }