Commit 91b6ef94 authored by wanglei's avatar wanglei

...

parent d2649c9f
...@@ -3,6 +3,8 @@ package com.test.easy.easycleanerjunk.activity ...@@ -3,6 +3,8 @@ package com.test.easy.easycleanerjunk.activity
import android.content.Intent import android.content.Intent
import android.graphics.Color import android.graphics.Color
import androidx.activity.addCallback import androidx.activity.addCallback
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import com.google.gson.Gson import com.google.gson.Gson
import com.test.easy.easycleanerjunk.adapter.WhatsAppMediaAdapter import com.test.easy.easycleanerjunk.adapter.WhatsAppMediaAdapter
import com.test.easy.easycleanerjunk.bean.ImageDataBean import com.test.easy.easycleanerjunk.bean.ImageDataBean
...@@ -35,8 +37,16 @@ class WhatsAppMessageCleanActivity : BaseActivity<ActivityWhatsAppMessageCleanBi ...@@ -35,8 +37,16 @@ class WhatsAppMessageCleanActivity : BaseActivity<ActivityWhatsAppMessageCleanBi
val tittle = intent.extras?.getString("Tittle") ?: "" val tittle = intent.extras?.getString("Tittle") ?: ""
binding.tvTitle.text = tittle binding.tvTitle.text = tittle
when(tittle){
"Audio Messages"->{
binding.rv.layoutManager = LinearLayoutManager(this)
}
else->{
binding.rv.layoutManager = GridLayoutManager(this, 3)
}
}
adapter = WhatsAppMediaAdapter() { adapter = WhatsAppMediaAdapter(true) {
binding.llSelectAll.isSelected = it binding.llSelectAll.isSelected = it
binding.tvClean.isEnabled = it binding.tvClean.isEnabled = it
} }
......
...@@ -3,12 +3,16 @@ package com.test.easy.easycleanerjunk.adapter ...@@ -3,12 +3,16 @@ package com.test.easy.easycleanerjunk.adapter
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.test.easy.easycleanerjunk.R import com.test.easy.easycleanerjunk.R
import com.test.easy.easycleanerjunk.bean.ImageDataBean import com.test.easy.easycleanerjunk.bean.ImageDataBean
import com.test.easy.easycleanerjunk.databinding.ItemLargeFileBinding
import com.test.easy.easycleanerjunk.databinding.ItemMediaSelectBinding import com.test.easy.easycleanerjunk.databinding.ItemMediaSelectBinding
import com.test.easy.easycleanerjunk.helps.KotlinExt.toFormatSize
import com.test.easy.easycleanerjunk.view.XmlEx.inflate import com.test.easy.easycleanerjunk.view.XmlEx.inflate
import java.io.File
class WhatsAppMediaAdapter( class WhatsAppMediaAdapter(
private val isList: Boolean = false, private val isList: Boolean = false,
...@@ -20,8 +24,13 @@ class WhatsAppMediaAdapter( ...@@ -20,8 +24,13 @@ class WhatsAppMediaAdapter(
class WhatMedia(view: View) : RecyclerView.ViewHolder(view) class WhatMedia(view: View) : RecyclerView.ViewHolder(view)
override fun getItemViewType(position: Int): Int {
return if (isList) 0 else 1
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): WhatMedia { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): WhatMedia {
return WhatMedia(R.layout.item_media_select.inflate(parent)) val layout = if (viewType == 0) R.layout.item_large_file else R.layout.item_media_select
return WhatMedia(layout.inflate(parent))
} }
override fun getItemCount(): Int { override fun getItemCount(): Int {
...@@ -33,9 +42,32 @@ class WhatsAppMediaAdapter( ...@@ -33,9 +42,32 @@ class WhatsAppMediaAdapter(
} }
override fun onBindViewHolder(holder: WhatMedia, position: Int, payloads: MutableList<Any>) { override fun onBindViewHolder(holder: WhatMedia, position: Int, payloads: MutableList<Any>) {
val binding = ItemMediaSelectBinding.bind(holder.itemView)
val context = holder.itemView.context val context = holder.itemView.context
val bean = beanList[position] val bean = beanList[position]
if (isList) {
val binding = ItemLargeFileBinding.bind(holder.itemView)
if (payloads.isEmpty()) {
binding.iv.setImageDrawable(ContextCompat.getDrawable(context, R.mipmap.audiomessages))
val file = File(bean.path)
binding.tvName.text = file.name
binding.tvSize.text = file.length().toFormatSize()
binding.ivSelector.isSelected = bean.isSelect
binding.root.setOnClickListener {
binding.ivSelector.isSelected = !binding.ivSelector.isSelected
bean.isSelect = binding.ivSelector.isSelected
notifyItemChanged(position, "sdd")
click.invoke(beanList.all { it.isSelect })
}
} else {
binding.ivSelector.isSelected = bean.isSelect
super.onBindViewHolder(holder, position, payloads)
}
} else {
val binding = ItemMediaSelectBinding.bind(holder.itemView)
if (payloads.isEmpty()) { if (payloads.isEmpty()) {
Glide.with(context).load(bean.path).centerCrop().into(binding.iv) Glide.with(context).load(bean.path).centerCrop().into(binding.iv)
binding.ivSelector.isSelected = bean.isSelect binding.ivSelector.isSelected = bean.isSelect
...@@ -51,6 +83,7 @@ class WhatsAppMediaAdapter( ...@@ -51,6 +83,7 @@ class WhatsAppMediaAdapter(
} }
} }
}
@SuppressLint("NotifyDataSetChanged") @SuppressLint("NotifyDataSetChanged")
fun setData(pathList: List<ImageDataBean>) { fun setData(pathList: List<ImageDataBean>) {
......
...@@ -50,8 +50,6 @@ ...@@ -50,8 +50,6 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_height="0dp"
android:layout_weight="1" android:layout_weight="1"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:spanCount="3"
tools:listitem="@layout/item_media_select" /> tools:listitem="@layout/item_media_select" />
<FrameLayout <FrameLayout
......
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