i was learning how to make recycler view in kotlin, and given code like this for my adapter
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
return when (viewType) {
ITEM_HEADER -> MenuHeaderHolder(parent.inflate(R.layout.item_header))
ITEM_MENU -> MenuItemHolder(parent.inflate(R.layout.item_menu))
else -> throw throw IllegalArgumentException("Undefined view type")
}
}
and my Class MenuHeaderHolder
class MenuHeaderHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
private val itemHeader = itemView.findViewById(R.id.tvHeaderItem) as TextView
fun bindContent(text: String){
itemHeader.text = text
}
}
but i get error unresolved reference: inflate, how fox this?
Try the following instead,
val inflater = LayoutInflater.from(parent.context)
return when (viewType) {
ITEM_HEADER -> MenuHeaderHolder(inflater.inflate(R.layout.item_header,parent,false))
ITEM_MENU -> MenuItemHolder(inflater.inflate(R.layout.item_menu,parent,false))
else -> throw throw IllegalArgumentException("Undefined view type")
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.