Dantotsu/app/src/main/java/ani/dantotsu/settings/DevelopersAdapter.kt
2024-02-02 02:04:46 -06:00

43 lines
No EOL
1.4 KiB
Kotlin

package ani.dantotsu.settings
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import ani.dantotsu.databinding.ItemDeveloperBinding
import ani.dantotsu.loadImage
import ani.dantotsu.openLinkInBrowser
import ani.dantotsu.setAnimation
class DevelopersAdapter(private val developers: Array<Developer>) :
RecyclerView.Adapter<DevelopersAdapter.DeveloperViewHolder>() {
inner class DeveloperViewHolder(val binding: ItemDeveloperBinding) :
RecyclerView.ViewHolder(binding.root) {
init {
itemView.setOnClickListener {
openLinkInBrowser(developers[bindingAdapterPosition].url)
}
}
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): DeveloperViewHolder {
return DeveloperViewHolder(
ItemDeveloperBinding.inflate(
LayoutInflater.from(parent.context),
parent,
false
)
)
}
override fun onBindViewHolder(holder: DeveloperViewHolder, position: Int) {
val b = holder.binding
setAnimation(b.root.context, b.root)
val dev = developers[position]
b.devName.text = dev.name
b.devProfile.loadImage(dev.pfp)
b.devRole.text = dev.role
}
override fun getItemCount(): Int = developers.size
}