|
@@ -5,16 +5,20 @@ import android.widget.ImageView
|
|
|
import android.widget.TextView
|
|
|
import com.gdtlib.lib.adapter.BaseListItem
|
|
|
import com.gdtlib.lib.viewholder.BaseListViewHolder
|
|
|
+import com.google.android.material.card.MaterialCardView
|
|
|
import com.khmer9.yuki.R
|
|
|
+import com.khmer9.yuki.extension.btnClick
|
|
|
+import com.khmer9.yuki.extension.setSafeOnClickListener
|
|
|
import com.khmer9.yuki.remote.ModuleData
|
|
|
import com.squareup.picasso.Picasso
|
|
|
|
|
|
-class MainModuleViewHolder(itemView: View) : BaseListViewHolder(itemView) {
|
|
|
+class MainModuleViewHolder(itemView: View, private val detailButtonListener: ((String, String, Int) -> Unit)? = null) : BaseListViewHolder(itemView) {
|
|
|
private val picasso = Picasso.get()
|
|
|
|
|
|
override fun bindView(item: BaseListItem) {
|
|
|
val imgIcon = itemView.findViewById<ImageView>(R.id.img_icon)
|
|
|
val tvName = itemView.findViewById<TextView>(R.id.tv_name)
|
|
|
+ val itemModule = itemView.findViewById<MaterialCardView>(R.id.item_module)
|
|
|
|
|
|
if (item is ModuleData) {
|
|
|
tvName.text = item.name
|
|
@@ -43,6 +47,12 @@ class MainModuleViewHolder(itemView: View) : BaseListViewHolder(itemView) {
|
|
|
.into(imgIcon)
|
|
|
} catch (e: Exception) {
|
|
|
}
|
|
|
+
|
|
|
+ itemModule.setSafeOnClickListener {
|
|
|
+ it.btnClick().subscribe {
|
|
|
+ detailButtonListener?.invoke(item.id, item.appId, item.numberSub)
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|