44 lines
1.5 KiB
Kotlin
44 lines
1.5 KiB
Kotlin
package pl.edu.amu.wmi.socialaggregator.viewholders
|
|
|
|
import android.view.LayoutInflater
|
|
import android.view.ViewGroup
|
|
import android.widget.ImageView
|
|
import android.widget.TextView
|
|
import androidx.constraintlayout.widget.ConstraintLayout
|
|
import androidx.recyclerview.widget.RecyclerView
|
|
import pl.edu.amu.wmi.socialaggregator.R
|
|
import pl.edu.amu.wmi.socialaggregator.socialplatforms.Post
|
|
|
|
class PostDetailsRecycler(
|
|
val posts: List<Post>) : RecyclerView.Adapter<PostDetailsRecycler.ViewHolder>() {
|
|
|
|
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
|
|
val layout = LayoutInflater.from(parent.context)
|
|
.inflate(R.layout.item_post, parent, false) as ConstraintLayout
|
|
|
|
val dateTime = layout.findViewById<TextView>(R.id.postDateTimeTextView)
|
|
val postContent = layout.findViewById<TextView>(R.id.postContentTextView)
|
|
val imageView = layout.findViewById<ImageView>(R.id.postSocialImage)
|
|
|
|
return ViewHolder(layout, dateTime, postContent, imageView)
|
|
}
|
|
|
|
override fun getItemCount(): Int {
|
|
return posts.size
|
|
}
|
|
|
|
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
|
|
val post = posts[position]
|
|
holder.dateTime.text = post.dateTime
|
|
holder.postContent.text = post.content
|
|
|
|
}
|
|
|
|
class ViewHolder(
|
|
root: ConstraintLayout,
|
|
val dateTime: TextView,
|
|
val postContent: TextView,
|
|
val imageView: ImageView
|
|
) : RecyclerView.ViewHolder(root)
|
|
|
|
} |