Guest User

Untitled

a guest
Mar 22nd, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.85 KB | None | 0 0
  1. import android.content.Context
  2. import android.support.v7.widget.RecyclerView
  3. import android.view.LayoutInflater
  4. import android.view.View
  5. import android.view.ViewGroup
  6. import android.widget.ImageView
  7. import android.widget.TextView
  8. import com.bumptech.glide.Glide
  9.  
  10. /**
  11. * Created by TipRayong on 14/3/2561 13:21
  12. * WebLogKT01
  13. *
  14. */
  15. class CustomRecyclerViewAdapter(val context: Context, val newsList: List<WebLog>)
  16. : RecyclerView.Adapter<CustomRecyclerViewAdapter.CustomViewHolder>() {
  17.  
  18. var onItemClickListener: OnItemClickListener? = null
  19.  
  20. override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CustomViewHolder {
  21. val view = LayoutInflater.from(parent.context).inflate(R.layout.recyclerview_custom, parent, false)
  22. return CustomViewHolder(view)
  23. }
  24.  
  25. override fun onBindViewHolder(holder: CustomViewHolder, position: Int) {
  26.  
  27. holder.textViewCustom.setText(newsList.get(position).title)
  28. Glide.with(context)
  29. .load(newsList.get(position).image)
  30. .placeholder(R.drawable.placeholder)
  31. .error(R.drawable.placeholder)
  32. .into(holder.imgCustom)
  33.  
  34. val listener = View.OnClickListener { onItemClickListener!!.onItemClick(position) }
  35. holder.imgCustom.setOnClickListener(listener)
  36. holder.textViewCustom.setOnClickListener(listener)
  37. }
  38.  
  39. override fun getItemCount(): Int {
  40. return newsList.size
  41. }
  42.  
  43. inner class CustomViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
  44. var textViewCustom: TextView
  45. var imgCustom: ImageView
  46.  
  47. init {
  48. this.textViewCustom = itemView.findViewById<View>(R.id.textviewCustom) as TextView
  49. this.imgCustom = itemView.findViewById<View>(R.id.imgCustom) as ImageView
  50. }
  51. }
  52.  
  53. interface OnItemClickListener {
  54. fun onItemClick(position: Int)
  55. }
  56. }
Add Comment
Please, Sign In to add comment