package com.sinata.xqmuse.ui.course.adapter
|
|
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.myToast
|
import com.sinata.xqmuse.R
|
import com.sinata.xqmuse.network.entity.Filter
|
import com.sinata.xqmuse.utils.Const
|
import com.sinata.xqmuse.utils.event.EmptyEvent
|
import org.greenrobot.eventbus.EventBus
|
import java.util.ArrayList
|
|
class FilterAdapter(filterList: ArrayList<Filter>,val isMine:Boolean = false) :HFRecyclerAdapter<Filter>(filterList, R.layout.item_course_filter){
|
override fun onBind(holder: ViewHolder, position: Int, data: Filter) {
|
holder.setText(R.id.tv_name,data.name)
|
val rvItem = holder.bind<RecyclerView>(R.id.rv_item)
|
rvItem.layoutManager = LinearLayoutManager(context,LinearLayoutManager.HORIZONTAL,false)
|
val adapter = FilterItemAdapter(data.list)
|
adapter.isMine = isMine
|
rvItem.adapter = adapter
|
adapter.setOnItemClickListener { view, position ->
|
if (isMine&&data.list[position].isUse == 0){ //该选项不可用
|
context.myToast("暂未购买当前类型课程")
|
return@setOnItemClickListener
|
}
|
data.list[position].checked = !data.list[position].checked
|
adapter.notifyItemChanged(position)
|
EventBus.getDefault().post(EmptyEvent(if (isMine) Const.EventCode.REFRESH_MY_COURSE else Const.EventCode.REFRESH_COURSE))
|
}
|
}
|
}
|