lmw
2024-06-18 1f45a54dc8e149548d3a61d1228741627aa4f23e
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
package com.dollearn.student.ui.discovery.adapter
 
import android.view.View
import android.widget.ImageView
import androidx.core.os.bundleOf
import cn.sinata.xldutils.activity.BaseActivity
import cn.sinata.xldutils.adapter.HFRecyclerAdapter
import cn.sinata.xldutils.adapter.util.ViewHolder
import cn.sinata.xldutils.utils.SpanBuilder
import cn.sinata.xldutils.utils.showAllowingStateLoss
import com.dollearn.student.R
import com.dollearn.student.dialog.CheckQrCodeDialog
import com.dollearn.student.network.entity.Student
import com.dollearn.student.utils.extention.clickDelay
import com.dollearn.student.utils.getQRcodeImg
import java.util.ArrayList
 
class QrAdapter(list: ArrayList<Student>):HFRecyclerAdapter<Student>(list, R.layout.item_stu_qr) {
    override fun onBind(holder: ViewHolder, position: Int, data: Student) {
        val name = "姓名:${data.name}"
        holder.setText(R.id.tv_name,SpanBuilder(name).color(context,3,name.length,R.color.textColor).bold(3,name.length).build())
        val age = "年龄:${data.age}岁"
        holder.setText(R.id.tv_age,SpanBuilder(age).color(context,3,age.length,R.color.textColor).bold(3,age.length).build())
        val content = "{\"id\":${data.id},\"isStudent\":${data.isStudent}}"
        holder.bind<ImageView>(R.id.iv_qr).setImageBitmap(getQRcodeImg(context, content))
        holder.bind<View>(R.id.clicker_code).clickDelay {
            val dialog = CheckQrCodeDialog()
            dialog.arguments = bundleOf("qrinfo" to content,"title" to data.name)
            dialog.showAllowingStateLoss((context as BaseActivity).supportFragmentManager, "checkqr")
        }
    }
 
}