Не могу решить View Holder в RecyclerView - PullRequest
0 голосов
/ 03 октября 2019

Я новичок в RecyclerView и хочу сообщить об этом, но проблема в том, что я не могу разрешить ссылку на видоискатель в следующем коде, пожалуйста, помогите мне

class ViewAdapter : RecyclerView.Adapter<ViewAdapter.ViewHolder>(){
     override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewAdapter.ViewHolder {
        // return ViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.slider, parent, false))
    // }
     }

     override fun getItemCount(): Int {
         TODO("not implemented") 
     }

     override fun onBindViewHolder(holder: ViewAdapter.ViewHolder, position: Int) {
         TODO("not implemented") 
     }


 }

code screenshot

Ответы [ 3 ]

5 голосов
/ 03 октября 2019

Вам необходимо создать один класс ViewHolder внутри вашего ViewAdapter класса

SAMPLE CODE

class ViewAdapter : RecyclerView.Adapter<ViewAdapter.ViewHolder>() {
    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewAdapter.ViewHolder {
        // return ViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.slider, parent, false))
        // }
    }

    override fun getItemCount(): Int {
        TODO("not implemented")
    }

    override fun onBindViewHolder(holder: ViewAdapter.ViewHolder, position: Int) {
        TODO("not implemented")
    }

    class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
    }
}
1 голос
/ 03 октября 2019

ViewAdapter - это класс, который вы создаете, поэтому ViewAdapter.ViewHolder является его внутренним классом.

Вам необходимо создать этот внутренний класс, например:

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

   ...

   class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
        ...
   }
}
1 голос
/ 03 октября 2019

Вы не определили класс ViewHolder в ViewAdapter

Просто определите класс ViewHolder в ViewAdapter

class ViewHolder(itemView: View): RecyclerView.ViewHolder(itemView) {

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...