Commit 58d7acf8 authored by yinjiacheng's avatar yinjiacheng

update 生活号选择页面UI

parent dc478049
package com.yidian.shenghuoquan.newscontent.adapter
import android.content.Context
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.RecyclerView
import com.yidian.common.cardutils.adapter.OnItemClickListener
import com.yidian.shenghuoquan.newscontent.R
......@@ -14,62 +16,66 @@ import kotlinx.android.synthetic.main.item_life_account_identity.view.*
* date: 5/19/21 5:32 PM
* description: 生活号身份adapter
*/
class LifeAccountIdentityAdapter :
RecyclerView.Adapter<LifeAccountIdentityAdapter.LifeAccountIdentityViewHolder>() {
class LifeAccountIdentityAdapter(val context: Context) :
RecyclerView.Adapter<LifeAccountIdentityAdapter.LifeAccountIdentityViewHolder>() {
private val mData: ArrayList<LifeAccountItemBean.Response> by lazy { ArrayList() }
private lateinit var mListener: OnItemClickListener<LifeAccountItemBean.Response>
private var mLastSelectItem: View? = null
private val mData: ArrayList<LifeAccountItemBean.Response> by lazy { ArrayList() }
private lateinit var mListener: OnItemClickListener<LifeAccountItemBean.Response>
private var mLastSelectItem: View? = null
override fun onCreateViewHolder(
parent: ViewGroup,
viewType: Int
): LifeAccountIdentityViewHolder {
return LifeAccountIdentityViewHolder(
LayoutInflater.from(parent.context)
.inflate(R.layout.item_life_account_identity, parent, false)
)
}
override fun onBindViewHolder(holder: LifeAccountIdentityViewHolder, position: Int) {
val data = mData[position]
holder.itemView.tv_life_account.text = data.life_account_name
if (data.role_type == 1) {
holder.itemView.tv_life_identity.text = "超级管理员"
} else {
holder.itemView.tv_life_identity.text = "普通管理员"
}
override fun onCreateViewHolder(
parent: ViewGroup,
viewType: Int
): LifeAccountIdentityViewHolder {
return LifeAccountIdentityViewHolder(
LayoutInflater.from(parent.context)
.inflate(R.layout.item_life_account_identity, parent, false)
)
}
holder.itemView.setOnClickListener {
mLastSelectItem?.isSelected = false
mLastSelectItem = holder.itemView
holder.itemView.isSelected = true
mListener.onClick(it, position, data)
}
override fun onBindViewHolder(holder: LifeAccountIdentityViewHolder, position: Int) {
val data = mData[position]
holder.itemView.tv_life_account.text = data.life_account_name
if (data.role_type == 1) {
holder.itemView.tv_life_identity.text = "超级管理员"
holder.itemView.tv_life_identity.setBackgroundResource(R.drawable.bg_item_manager_selected_on)
holder.itemView.tv_life_identity.setTextColor(ContextCompat.getColor(context, R.color.color_FFFFFFFF))
} else {
holder.itemView.tv_life_identity.text = "普通管理员"
holder.itemView.tv_life_identity.setBackgroundResource(R.drawable.bg_item_manager_selected_off)
holder.itemView.tv_life_identity.setTextColor(ContextCompat.getColor(context, R.color.color_FFEAAF35))
}
override fun getItemCount(): Int {
return mData.size
holder.itemView.setOnClickListener {
mLastSelectItem?.isSelected = false
mLastSelectItem = holder.itemView
holder.itemView.isSelected = true
mListener.onClick(it, position, data)
}
}
/**
* 更新数据
*/
fun updateData(data: List<LifeAccountItemBean.Response>?) {
data?.let {
mData.clear()
mData.addAll(it)
notifyDataSetChanged()
}
}
override fun getItemCount(): Int {
return mData.size
}
fun setOnItemClickListener(listener: OnItemClickListener<LifeAccountItemBean.Response>) {
mListener = listener
/**
* 更新数据
*/
fun updateData(data: List<LifeAccountItemBean.Response>?) {
data?.let {
mData.clear()
mData.addAll(it)
notifyDataSetChanged()
}
}
fun setOnItemClickListener(listener: OnItemClickListener<LifeAccountItemBean.Response>) {
mListener = listener
}
/**
* 自定义ViewHolder
*/
class LifeAccountIdentityViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView)
/**
* 自定义ViewHolder
*/
class LifeAccountIdentityViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView)
}
\ No newline at end of file
}
......@@ -52,7 +52,7 @@ class LifeAccountIdentityActivity : BaseActivity<ActivityLifeAccountIdentityBind
private fun initView() {
viewBind.rvLifeAccountIdentity.layoutManager =
LinearLayoutManager(this, RecyclerView.VERTICAL, false)
viewBind.rvLifeAccountIdentity.adapter = LifeAccountIdentityAdapter()
viewBind.rvLifeAccountIdentity.adapter = LifeAccountIdentityAdapter(this)
(viewBind.rvLifeAccountIdentity.adapter as LifeAccountIdentityAdapter).setOnItemClickListener(
this
)
......
......@@ -61,4 +61,5 @@
<color name="color_FFE8F9D8">#FFE8F9D8</color>
<color name="color_FF6BB81F">#FF6BB81F</color>
<color name="color_66000000">#66000000</color>
<color name="color_FFEAAF35">#FFEAAF35</color>
</resources>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment