package com.sinata.xqmuse.ui.course.adapter
|
|
import android.graphics.Paint
|
import android.view.View
|
import android.widget.ImageView
|
import android.widget.TextView
|
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.RecyclerView
|
import cn.sinata.xldutils.adapter.HFRecyclerAdapter
|
import cn.sinata.xldutils.adapter.util.ViewHolder
|
import cn.sinata.xldutils.utils.SpanBuilder
|
import com.sinata.xqmuse.R
|
import com.sinata.xqmuse.network.entity.PackageListVO
|
import com.sinata.xqmuse.network.entity.RecommendCourse
|
import java.util.ArrayList
|
|
class PackageAdapter(packages: ArrayList<PackageListVO>) :HFRecyclerAdapter<PackageListVO>(packages, R.layout.item_package){
|
var checked = -1
|
override fun onBind(holder: ViewHolder, position: Int, data: PackageListVO) {
|
val bg = holder.bind<View>(R.id.cl_bg)
|
val ivCheck = holder.bind<ImageView>(R.id.iv_check)
|
val originPrice = holder.bind<TextView>(R.id.tv_origin_price)
|
val rvSend = holder.bind<RecyclerView>(R.id.rv_send)
|
|
if (position == checked){
|
bg.setBackgroundResource(R.drawable.bg_green_line_4dp)
|
ivCheck.setImageResource(R.mipmap.icon_selected)
|
}else{
|
bg.setBackgroundResource(R.drawable.bg_grey_line_4dp)
|
ivCheck.setImageResource(R.mipmap.icon_radiobutton_grey)
|
}
|
holder.setText(R.id.tv_name,data.packageName)
|
holder.setText(R.id.tv_price,SpanBuilder("¥%.2f".format(data.price)).size(0,1,12).build())
|
if (data.price == data.amount){
|
originPrice.text = ""
|
}else{
|
originPrice.text = "¥%.2f".format(data.amount)
|
originPrice.paintFlags = originPrice.paintFlags or Paint.STRIKE_THRU_TEXT_FLAG
|
}
|
rvSend.layoutManager = LinearLayoutManager(context)
|
val sendList = arrayListOf<RecommendCourse>()
|
val adapter = SendCourseAdapter(sendList)
|
sendList.addAll(data.recommendCourse)
|
rvSend.adapter = adapter
|
adapter.setOnItemClickListener { view, _ ->
|
mOnItemClickListener?.onItemClick(rvSend,position)
|
}
|
}
|
|
}
|