You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
2.2 KiB
61 lines
2.2 KiB
package com.novel.read.adapter
|
|
|
|
import android.content.Context
|
|
import android.content.Intent
|
|
import android.view.LayoutInflater
|
|
import android.view.View
|
|
import android.view.ViewGroup
|
|
import android.widget.ImageView
|
|
import android.widget.TextView
|
|
import androidx.recyclerview.widget.RecyclerView
|
|
|
|
import com.novel.read.R
|
|
import com.novel.read.activity.NovelBookTypeListActivity
|
|
import com.novel.read.constants.Constant
|
|
import com.novel.read.model.protocol.CategoryTypeResp
|
|
import com.novel.read.utlis.GlideImageLoader
|
|
|
|
class StackAdapter(private val mList: List<CategoryTypeResp.CategoryBean>) : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
|
|
|
|
private var mContext: Context? = null
|
|
|
|
override fun onCreateViewHolder(viewGroup: ViewGroup, i: Int): RecyclerView.ViewHolder {
|
|
if (mContext == null) {
|
|
mContext = viewGroup.context
|
|
}
|
|
val view: View = LayoutInflater.from(mContext).inflate(R.layout.rlv_item_book_type, viewGroup, false)
|
|
return ViewHolder(view)
|
|
}
|
|
|
|
override fun onBindViewHolder(viewHolder: RecyclerView.ViewHolder, i: Int) {
|
|
if (viewHolder is ViewHolder) {
|
|
|
|
var input = mList[i].title
|
|
val regex = "(.{2})"
|
|
input = input.replace(regex.toRegex(), "$1\n")
|
|
viewHolder.mTvType.text = input
|
|
viewHolder.itemView.setOnClickListener { view ->
|
|
val intent = Intent(mContext, NovelBookTypeListActivity::class.java)
|
|
intent.putExtra(Constant.Bundle.CategoryId, mList[i].id.toString())
|
|
intent.putExtra(Constant.Bundle.mTitle, mList[i].title)
|
|
mContext!!.startActivity(intent)
|
|
}
|
|
GlideImageLoader.displayCornerImage(
|
|
mContext!!,
|
|
mList[i].cover!!,
|
|
viewHolder.mIvType,
|
|
R.drawable.ic_type_default
|
|
)
|
|
}
|
|
}
|
|
|
|
override fun getItemCount(): Int {
|
|
return mList.size
|
|
}
|
|
|
|
internal class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
|
|
var mIvType: ImageView = itemView.findViewById(R.id.iv_book)
|
|
var mTvType: TextView = itemView.findViewById(R.id.tv_book_name)
|
|
|
|
}
|
|
}
|
|
|