Adapter
class Adapter(private val liveList: ArrayList<Information>): RecyclerView.Adapter<Adapter.ViewHolder>(){@SuppressLint("InflateParams")override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): Adapter.ViewHolder {val view = LayoutInflater.from(parent.context).inflate(R.layout.local_pictrues_cell,null)return ViewHolder(view)}override fun onBindViewHolder(holder: Adapter.ViewHolder, position: Int) {holder.itemView.imageview.setImageResource(liveList[position].image)}override fun getItemCount(): Int {return liveList.size}inner class ViewHolder(itemView: View):RecyclerView.ViewHolder(itemView){}}
在界面中调用
@SuppressLint("WrongConstant") override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) addImageList() val adapter = Adapter(images) // 第一个参数为context 第二个参数为设置为两行,第三个参数为设置展示方向 val layoutManager = GridLayoutManager(requireContext(), 2, GridLayoutManager.HORIZONTAL, false) // 设置layoutManager的元素占比 layoutManager.spanSizeLookup = object : GridLayoutManager.SpanSizeLookup() { override fun getSpanSize(position: Int): Int { return when (position) { // 0为第一个元素 2为独占两行 0 -> 2 else -> 1 } } } recycler_view.adapter = adapter recycler_view.layoutManager = layoutManager }实现效果

