Created
August 15, 2020 11:54
-
-
Save kyodgorbek/dea4b7e25bf52322e7c3b2b3eb85180e to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 | |
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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