lmw
2024-09-25 92778728b83ce1a34ba21bcdb061afdeca16cce5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
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)
        }
    }
 
}