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")
|
}
|
}
|
|
}
|