Kotlin请求网络拿到数据后用RecyclerView显示的一个demo
本篇主要接上篇拿到数据后的展示
一:拿到数据后给recycler设置布局管理器和adapter
recyclerview.layoutManager = LinearLayoutManager(applicationContext)
recyclerview.adapter = MyAdapter(response.body())
二:Adapter代码
(R.layout.item_case只有一个TextView)
class MyAdapter(var context: Context,var listBean: CaseListBean) : RecyclerView.Adapter<MyAdapter.ViewHolder>() {
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
holder.tvTitle.text = listBean.data!!.data!![position].case_name
//点击事件
holder.tvTitle.setOnClickListener {
Toast.makeText(context,holder.tvTitle.text,Toast.LENGTH_SHORT).show()
}
}
override fun getItemCount(): Int {
return listBean.data!!.data!!.size
}
override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): ViewHolder {
val view = LayoutInflater.from(parent?.context).inflate(R.layout.item_case, parent, false)
return ViewHolder(view)
}
class ViewHolder : RecyclerView.ViewHolder {
var tvTitle: TextView
constructor(itemView: View) : super(itemView) {
tvTitle = itemView.findViewById(R.id.tv_1)
}
}
}