recycleview基础操作

不喜勿喷,互相交流

导入需要的jar包

compile 'com.android.support:recyclerview-v7:25.0.0'
=================================================================================

主界面

public class MainActivity extends AppCompatActivity implements RecyclerView.OnItemTouchListener {
    RecyclerView recyclerView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.recycle);

//recyclerView.setOnClickListener(new View.OnClickListener() {
//    @Override
//    public void onClick(View v) {
//
//    }
//});
    }

    @Override
    public void onContentChanged() {
        super.onContentChanged();
        recyclerView = (RecyclerView) findViewById(R.id.recycle_all);
        //
        recyclerView.addOnItemTouchListener(this);
        //布局管理器
        //上下跑
//        recyclerView.setLayoutManager(new LinearLayoutManager(this));
        //左右跑,默认是TRUE往左边拉
//        recyclerView.setLayoutManager(new LinearLayoutManager(this,LinearLayoutManager.HORIZONTAL,true));
        //gridviewde布局管理器
//        recyclerView.setLayoutManager(new GridLayoutManager(this,3, GridLayoutManager.VERTICAL,true));
        //瀑布流
        recyclerView.setLayoutManager(new StaggeredGridLayoutManager(2,StaggeredGridLayoutManager.VERTICAL));
        //设置间隔
        recyclerView.addItemDecoration(new RecyclerView.ItemDecoration() {
            @Override
            public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
                super.getItemOffsets(outRect, view, parent, state);
                outRect.set(5,5,0,0);
            }
        });
        //数据源
        int []id = {R.mipmap.b, R.mipmap.cccccccccc, R.mipmap.iiiii, R.mipmap.ioioi, R.mipmap.kjkhjk, R.mipmap.ooo, R.mipmap.opopo, R.mipmap.pipip, R.mipmap.ppppp, R.mipmap.popopopoip, R.mipmap.aaaaa, R.mipmap.bbbbbbbbb, R.mipmap.cccccccc, R.mipmap.cccccccccc, R.mipmap.eeeeeeeeeeee, R.mipmap.sssssssssssss};
        //适配器
        recycleadapter recycleadapter=new recycleadapter(id);
        recyclerView.setAdapter(recycleadapter);
        recycleadapter.notifyDataSetChanged();

    }

    @Override
    public boolean onInterceptTouchEvent(RecyclerView rv, MotionEvent e) {
        return false;
    }

    @Override
    public void onTouchEvent(RecyclerView rv, MotionEvent e) {

    }

    @Override
    public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) {

    }
}
============================================================================================================================

适配器

public class recycleadapter extends RecyclerView.Adapter<recycleadapter.myholde> {
    int []id;

    public recycleadapter(int []id) {
        this.id = id;
    }

    //绑定 可复用view玉的myholde绑定
    @Override
    public myholde onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recycleshow, parent, false);

        return new myholde(view);
    }

    //数据与myholde绑定
    @Override
    public void onBindViewHolder(myholde holder, int position) {
        holder.imageView.setImageResource(id[position]);
    }

    //
    @Override
    public int getItemCount() {
        return id.length;
    }


    static class myholde extends RecyclerView.ViewHolder {
        ImageView imageView;

        public myholde(View itemView) {
            super(itemView);
            //加载组件
            imageView = (ImageView) itemView.findViewById(R.id.img_recycleshow);

        }
    }
}
==============================================================================================================

demo地址

链接:http://pan.baidu.com/s/1eRSaRqq 密码:g775

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值