为了账号安全,请及时绑定邮箱和手机立即绑定
  • 继承Adapter 创建ViewHolder 构造函数传递参数进来,LayoutInflater用于得到布局 getItemCount()返回list大小 onCreateViewHolder()创建刚刚给的MyViewHolder(布局view) 在ViewHolder传入的View后,初始化控件,设置属性 onBindViewHolder()中给holder中控件赋值 回到Activity中给RecylerView设置layoutmanager(linear 或者grid)
    查看全部
  • 使用这时RecylerView分割线 .addItemDecoration(),增加一个类
    查看全部
  • 插入Item时要调用NotifyItemInsert和NotifyItemRemove两个方法。不是Notifysetdatachanged。holder.setLayoutPosition动态获取Item的位置。还有RecycleView没有为item设置监听事件。
    查看全部
    2 采集 收起 来源:总结

    2016-03-13

  • 用holder.getLayoutPosition()来获取当前屏幕上的位置
    查看全部
  • RecycleView 设计思想: 不关心内部的item是否显示在正确的位置,如何显示<-----LayoutManager(设置LinearLayoutManager,GridLayoutManager) 不关心item间如何分隔<--------ItemDecoration(ListView可以通过Divider来设置) 不关心item增加与删除的动画效果<------ItemAnimator(可实现其子类) 仅仅关注如何回收与复用view 属于一个插件式的架构,通过三个类的组合来实现需求 相关的重要类: Adapter(自己的适配器) ViewHolder(强制使用) LayoutManager ItemDecoration(分隔效果) ItemAnimator(动画效果) RecyclerView能实现: 依赖于LayoutManager的设置 1、Just like ListView(显示传统ListView的风格) 2、Just like GridView(显示传统GridView的风格) 3、横向ListView 4、横向GridView 5、瀑布流 依赖于ItemAnimator的设置 6、定制Item增加与删除动画
    查看全部
  • 动画效果
    查看全部
  • 11111
    查看全部
  • 你想要控制其显示的方式,请通过布局管理器LayoutManager 你想要控制Item间的间隔(可绘制),请通过ItemDecoration 你想要控制Item增删的动画,请通过ItemAnimator
    查看全部
  • Xuexi
    查看全部
  • 挺有用的
    查看全部
  • hjjj
    查看全部
    1 采集 收起 来源:案例效果展示

    2015-06-15

  • 摘自评论区

    实现ListView
    AS里面要添加RecyclerView的库,需要找V7版本的,如图
    1.思路
    布局使用RecyclerView,然后为其创建一个Adapter,使用LinearLayoutManager设置成ListView
    使用github的开源类DividerItemDecoration来实现自定义item之间的分割线
    2.布局
    <android.support.v7.widget.RecyclerView
        ……
    2.RecyclerView
    mRecyclerView = findViewById(R.id.id_recyclerview);
    3.创建Adapter
    MyRecyclerViewAdapter extends RecyclerView.Adapter<MyViewHolder> {
    (1)构造函数
    public MyRecyclerViewAdapter(Context context, List<String> datas) {
        this.mContext = context;
        this.mDatas = datas;
        this.mInflater = LayoutInflater.from(context);
    }
    (2)onCreateViewHolder需要inflate布局文件并返回ViewHolder
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
       View view = mInflater.inflate(R.layout.simple_textview, parent, false);
       MyViewHolder viewHolder = new MyViewHolder(view);
       return viewHolder;
    }
    (3)onBindViewHolder()为ViewHolder的view初始化
    public void onBindViewHolder(final MyViewHolder holder, final int position) {
       holder.textView.setText(mDatas.get(position));
    }

    查看全部
  • RecyclerView仅仅关注如何回收和复用View item的位置通过LayoutManager item间的分隔通过ItemDecoraction item增加与删除效果通过ItemAnimator
    查看全部
  • 如果调用的是适配器的notifyInsertChanged(),则没有刷新全部的item,所以可能照成位置的的不正确,可以通过viewHolder的getLayoutPosition()来获取item的位置。 由于RecyclerView没有提供点击和长按的监听事件,则需要自己在MyAdapter中使用接口回调的方式添加相应的监听器,具体步骤: 1.申明一个接口,里面提供相应的方法。 2.定义一个类级别的接口对象。 3.定义一个set方法用于外部传递接口变量。 4.在onBindViw方法中调用。
    查看全部
  • DividerItemDecoration下载地址
    查看全部
首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
大家好,本门课程为中级案例课程。 在学习本门课程之前,小伙伴们需要掌握Android的基础知识。
老师告诉你能学到什么?
1.RecyclerView的基本知识 2.使用RecyclerView实现列表及瀑布流 3.为RecyclerView添加分割线及监听回调

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!