Skip to content

Instantly share code, notes, and snippets.

@kyodgorbek
Created August 15, 2020 11:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kyodgorbek/dea4b7e25bf52322e7c3b2b3eb85180e to your computer and use it in GitHub Desktop.
Save kyodgorbek/dea4b7e25bf52322e7c3b2b3eb85180e to your computer and use it in GitHub Desktop.
data class Member(
@SerializedName("age")
val age: Int,
@SerializedName("email")
val email: String,
@SerializedName("_id")
val id: String,
@SerializedName("name")
val name: Name,
@SerializedName("phone")
val phone: String
)
class MemberAdapter
: RecyclerView.Adapter<MemberAdapter.MemberViewHolder>() {
private val members = mutableListOf<Member>()
fun setMembers(data: List<Member>) {
members.clear()
members.addAll(data)
this.notifyDataSetChanged()
}
override fun onCreateViewHolder(
parent: ViewGroup,
viewType: Int
): MemberAdapter.MemberViewHolder {
val view = LayoutInflater.from(parent.context).inflate(R.layout.member_list, parent, false)
return MemberViewHolder(view)
}
override fun getItemCount(): Int {
return members.size
}
override fun onBindViewHolder(holder: MemberAdapter.MemberViewHolder, position: Int) {
return holder.bind(members[position])
}
class MemberViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
private val memberAge: TextView = itemView.findViewById(R.id.memberAge)
// private val memberName: TextView = itemView.findViewById(R.id.memberName)
private val lastName: TextView = itemView.findViewById(R.id.lastName)
private val firstName:TextView = itemView.findViewById(R.id.firstName)
private val emailAddress:TextView = itemView.findViewById(R.id.emailAddress)
private val phone:TextView = itemView.findViewById(R.id.phone)
fun bind(member: Member) {
memberAge.text = member.age.toString()
lastName.text = member.name.last
firstName.text = member.name.first
emailAddress.text = member.email
phone.text = member.phone
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment