android 上拉加载 下拉刷新 动画listview/recyclerview

android 上拉加载  下拉刷新 动画listview/recyclerview

首先本文用到的自定义recyclerview上传至https://download.csdn.net/download/qq_36355271/10910706

请自行下载。

xml写法:

<view.cxrecyclerview.CXRecyclerView
    android:id="@+id/recycler"
    android:layout_width="match_parent"
    android:background="#fff"
    android:layout_height="match_parent">

第一步:

friendList_adapter=new FriendList_Adapter(context,list);
RecyclerViewUtil.init(context,recycler,friendList_adapter);
/**
 * 竖向分割线
 * @param context
 * @param recyclerView
 * @param adapter
 */
public static  void init(Context context, RecyclerView recyclerView, RecyclerView.Adapter adapter) {
    LinearLayoutManager layoutManager = new LinearLayoutManager(context);
    recyclerView.setLayoutManager(layoutManager);
    recyclerView.setHasFixedSize(true);
    recyclerView.addItemDecoration(new DividerItemDecoration(context, LinearLayoutManager.VERTICAL));
    recyclerView.setAdapter(adapter);
}

此方法在上面下载大文件中

正常使用adapter即可使用

adapter如下:

/**
     * Created by Administrator on 2019/1/8.
     */

    public class FriendList_Adapter extends RecyclerView.Adapter<FriendList_Adapter.MyHolder>{
        Context context;
        List<UserTable> list;
        public FriendList_Adapter(Context context,List<UserTable> list){
            this.context=context;
            this.list=list;
        }

        @NonNull
        @Override
        public FriendList_Adapter.MyHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
            View view = View.inflate(context, R.layout.adapter_friendlist_fragment,null);
            MyHolder myHolder=new MyHolder(view);
            return myHolder;
        }

        @Override
        public void onBindViewHolder(@NonNull FriendList_Adapter.MyHolder holder, int position) {
            holder.tv.setText(list.get(position).getPhone());
            holder.tv_call.setText(list.get(position).getCellphone());
            holder.tv_name.setText(list.get(position).getUsername());
            holder.tv_group.setText(list.get(position).getGroup()+"——"+list.get(position).getDname());
//        holder.tv.setOnClickListener();
//        holder.itemView.setOnClickListener();
        }

        @Override
        public int getItemCount() {
            return list.size();
        }

        class MyHolder extends RecyclerView.ViewHolder{
            TextView tv;
            TextView tv_call;
            TextView tv_name;
            TextView tv_group;
            public MyHolder(View itmeview){
                super(itmeview);
                tv=itmeview.findViewById(R.id.text1);
                tv_call=itmeview.findViewById(R.id.tv_call);
                tv_name=itmeview.findViewById(R.id.tv_name);
                tv_group=itmeview.findViewById(R.id.tv_group);
            }
        }
    }

在activity中:如下

@BindView(R.id.recycler)
CXRecyclerView recycler;
 recycler.setLoadingListener(new CXRecyclerView.LoadingListener() {
            @Override
            public void onRefresh() {
                Https_();//下拉刷新
            }

            @Override
            public void onLoadMore() {//加载更多
//                Handler().postDelayed(Runnable{
//                },1000);
                recycler.loadMoreComplete();
            }
        });

猜你喜欢

转载自blog.csdn.net/qq_36355271/article/details/86299610