boorujelly/app/src/main/java/com/example/testes/ImageGridAdapter.kt

40 lines
1.4 KiB
Kotlin

package com.example.testes
import android.content.Context
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.TextView
import androidx.core.content.ContextCompat.getDrawable
import androidx.recyclerview.widget.RecyclerView
import com.bumptech.glide.Glide
class ImageGridAdapter(val imageList: List<BooruImage>) :
RecyclerView.Adapter<ImageGridAdapter.ViewHolder>() {
lateinit var context: Context;
/* Creates and inflates view and return FlowerViewHolder. */
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
context = parent.context;
val view = LayoutInflater.from(parent.context)
.inflate(R.layout.image_grid_item, parent, false)
return ViewHolder(view)
}
/* Gets current flower and uses it to bind view. */
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
Glide.with(context)
.load(imageList[position].preview_url)
.placeholder(getDrawable(context, R.drawable.ic_launcher_foreground))
.into(holder.imageview)
}
inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
var imageview: ImageView = itemView.findViewById(R.id.image)
}
override fun getItemCount(): Int = imageList.size
}