Commit 5176e97e authored by yinjiacheng's avatar yinjiacheng

fix SHQBD-228 商户管理中心下拉刷新优化

parent 92ca0ce7
......@@ -72,7 +72,6 @@ class MerchantServiceFunctionAdapter @JvmOverloads constructor(
override fun onBindViewHolder(holder: MerchantServiceViewHolder, position: Int) {
val data = serviceData[position]
if (data.show != FUNCTION_SHOW) return
if (data.icon_url.isNotEmpty()) {
Glide.with(context).load(data.icon_url).into(viewBinding.ivService)
} else {
......
......@@ -40,14 +40,29 @@ class MerchantServiceGroupAdapter @JvmOverloads constructor(
init {
// 将不显示的数据去除
data?.let {
it.forEach { menuItem ->
if (menuItem.show == GROUP_SHOW) {
groupData.add(menuItem)
it.forEach { item ->
if (item.show == GROUP_SHOW) {
groupData.add(item)
}
}
}
}
/**
* 刷新数据
*/
fun updateData(data: List<GetConfigListBean.Item>?) {
groupData.clear()
data?.let {
it.forEach { item ->
if (item.show == GROUP_SHOW) {
groupData.add(item)
}
}
}
notifyDataSetChanged()
}
override fun onCreateViewHolder(
parent: ViewGroup,
viewType: Int
......@@ -58,15 +73,16 @@ class MerchantServiceGroupAdapter @JvmOverloads constructor(
parent,
false
)
return MerchantServiceGroupViewHolder(viewBinding.root, viewBinding)
val holder = MerchantServiceGroupViewHolder(viewBinding.root, viewBinding)
// ViewHolder禁止复用
holder.setIsRecyclable(false)
return holder
}
override fun onBindViewHolder(holder: MerchantServiceGroupViewHolder, position: Int) {
val data = groupData[position]
if (data.show != GROUP_SHOW) return
holder.viewBinding.tvTitle.text = data.group_name
viewBinding.rvService.layoutManager =
GridLayoutManager(context, 4)
viewBinding.rvService.layoutManager = GridLayoutManager(context, 4)
viewBinding.rvService.adapter = MerchantServiceFunctionAdapter(context, data.functions, listener)
}
......
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