【4】Kotlin中使用RecyclerView

来源:互联网 发布:资料整理软件 编辑:程序博客网 时间:2024/06/05 07:40

布局不多说没变化,初始化recyclerview

private var mRecyclerView:RecyclerView?=null;mRecyclerView = findViewById(R.id.mRecyclerView)

Adapter

class MyAdapter : RecyclerView.Adapter<MyAdapter.ViewHolder>{        private var mContext:Context ? =null        constructor(context :Context){//构造方法需自己写,不会默认生成无参数            mContext = context        }        override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): ViewHolder { return ViewHolder(LayoutInflater.from(mContext).inflate(R.layout.item_main,null,false))        }        override fun getItemCount(): Int {            return 80        }        override fun onBindViewHolder(holder: ViewHolder?, position: Int) {                holder?.textview?.text="sadsf+position+"+position        }        class ViewHolder : RecyclerView.ViewHolder {            var textview :TextView ? =null            constructor(itemView:View) : super(itemView){                textview = itemView.findViewById(R.id.tv_text)            }        }    }

使用Adapter

        mRecyclerView?.layoutManager =  LinearLayoutManager(this)        mRecyclerView?.adapter = MyAdapter(this)        mRecyclerView?.adapter?.notifyDataSetChanged()//更新方式