Как добавить разные элементы в RecyclerView
Мне надо передать 4 элемента в RecyclerView, но когда я запускаю приложение, оно выводит числа, я думаю, что у меня неправильно написал onBindViewHolder. Как должен выглядеть onBindViewHolder, чтобы при запуске приложения отображались фреймы из xml файлов Github
class UsersAdapter(val itemsId: ArrayList<String>) : RecyclerView.Adapter<UsersAdapter.ViewHolder>() {
companion object {
const val RECYCLER_USER_INFO = 1
const val RECYCLER_PROJECT_INFO = 2
const val RECYCLER_SKILLS_FILTER = 3
const val RECYCLER_SKILLS = 4
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
when (viewType) {
RECYCLER_USER_INFO -> return ViewHolder(
LayoutInflater.from(parent.context)
.inflate(R.layout.recycler_user_info, parent, false)
)
RECYCLER_PROJECT_INFO -> return ViewHolder(
LayoutInflater.from(parent.context)
.inflate(R.layout.recycler_about_project, parent, false)
)
RECYCLER_SKILLS_FILTER -> return ViewHolder(
LayoutInflater.from(parent.context)
.inflate(R.layout.recycler_skills_filter, parent, false)
)
RECYCLER_SKILLS -> return ViewHolder(
LayoutInflater.from(parent.context).inflate(R.layout.recycler_skills, parent, false)
)
else -> return ViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.user_row, parent, false))
}
// val view: View = LayoutInflater.from(parent.context).inflate(R.layout.user_row, parent, false)
// return ViewHolder(view)
}
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
when (position) {
RECYCLER_USER_INFO -> R.layout.recycler_user_info
RECYCLER_PROJECT_INFO -> holder.firstname.text = 2.toString()
RECYCLER_SKILLS_FILTER -> holder.firstname.text = 3.toString()
RECYCLER_SKILLS -> holder.firstname.text = 4.toString()
}
// holder.firstname.text = itemsId[position]
}
override fun getItemCount() = 4
class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val firstname: TextView = itemView.findViewById(R.id.firstName)
}
}