Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.gahfy.pseudokonkretnapka
- 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 androidx.constraintlayout.widget.ConstraintLayout
- import androidx.recyclerview.widget.RecyclerView
- import com.bumptech.glide.Glide
- import kotlinx.android.synthetic.main.my_text_view.view.*
- class RvAdapter(val books: ArrayList<Book>, val context: Context) : RecyclerView.Adapter<ViewHolder>() {
- override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
- val view: View = (LayoutInflater.from(context).inflate(R.layout.my_text_view, parent, false))
- return ViewHolder(view)
- }
- override fun getItemCount(): Int {
- return books.size
- }
- fun getItem(position: Int): Book {
- return books[position]
- }
- override fun getItemId(position: Int): Long {
- return super.getItemId(position)
- }
- override fun onBindViewHolder(holder: ViewHolder, position: Int) {
- val item = getItem(position)
- holder.bindTo(item)
- holder.itemView.setOnClickListener {
- clickListener?.onItemClick(item)
- }
- }
- interface ClickListener {
- fun onItemClick(item: Book)
- }
- interface ScrollListener {
- fun onScrollList(view: RecyclerView)
- }
- fun setClickListener(clickListener: ClickListener) {
- this.clickListener = clickListener
- }
- private var clickListener: ClickListener? = null
- }
- class ViewHolder(val v: View) : RecyclerView.ViewHolder(v) {
- fun bindTo(item: Book){
- item.apply {
- itemView.tvBookName.text = item.bookName
- Glide
- .with(itemView.context)
- .load(item.pictureID)
- .into(itemView.ivObrazek)
- zwieksz(itemView.ivObrazek, item.zwiekszony)
- }
- }
- fun zwieksz(ivObrazek: ImageView, zwiekszony: Boolean){
- if(zwiekszony) {
- ivObrazek.layoutParams = ConstraintLayout.LayoutParams(700, 700)
- }
- else{
- ivObrazek.layoutParams = ConstraintLayout.LayoutParams(157, 157)
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement