-3

我需要使用数据类显示图像

我在数据类中感到困惑,我将图像处理为图像或 Int 数据类 User(val pic : Image)

或数据类 User(val pic : Int)

并显示它抛出 CustomAdapter

  class CustomAdapter(val userList: ArrayList<User>) :      RecyclerView.Adapter<CustomAdapter.ViewHolder>() {   
  class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {

 override fun onCreateViewHolder(parent: ViewGroup, viewType: Int):    CustomAdapter.ViewHolder {
    val v =  LayoutInflater.from(parent.context).inflate(R.layout.list_layout, parent, false)
    return ViewHolder(v)

     fun bindItems(user: User) {

  val imageView = itemView.findViewById(R.id.image_item) as ImageView

        imageView.setImageResource(pic: )


    }

}

我知道我的代码不完整,所以我只需要示例来演示数据类中的图像

4

1 回答 1

0

数据类应该具有通用类型数据,但在您的代码中您试图保存 ImageView。下面是示例数据类:

 data class User(val name: String, val pic: Int)

并在下面添加适配器代码:

class HelpAdapter : RecyclerView.Adapter<HelpAdapter.ViewHolder>() {

override fun getItemCount() = 10

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {

val view =LayoutInflater.from(parent.context).inflate(R.layout.row_navigation_menu,parent,false)
    return ViewHolder(view)
}

override fun onBindViewHolder(holder: ViewHolder, position: Int) {
    //here add data to the views
    //If your have list of user data, then you can each user like 
    val user = usersData[position]
    holder.nameTV.text = user.name
    holder.imageView.setImageResource(user.pic)
}

 inner class ViewHolder(view: View) : RecyclerView.ViewHolder(view) {
    val nameTV = view.tv_name
    val imageView = view.iv_pic
 }
}
于 2018-02-22T10:17:53.793 回答