Я изучаю Kotlin и Adroid Studio, а недавно застрял на RecyclerView.
Проблема в том, что я не могу двигаться дальше из-за ошибки, отображаемой на LayoutManager.
Мой маленький код выглядит так:
package com.example.julian.recyclerviewapplication
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.support.v7.widget.LinearLayoutManager
import android.support.v7.widget.RecyclerView
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
RecyclerView.LayoutManager=LinearLayoutManager(this)
}
}
LayoutManager подчеркнут и сообщает мне, что: "
Classifier 'LayoutManager' does not have a companion object, and thus must be initalized here".
Я не продвинутый программист, скорее новичок, и я пытался исправить это замечание, но на данный момент это выходит за рамки моих навыков.
Спасибо за помощь.
val layoutManager = LinearLayoutManager(this)
<your recyclerview>.layoutManager = layoutManager
Или даже короче:
<your recyclerview>.layoutManager = LinearLayoutManager(this)
Вы можете сделать так, как показано ниже:
my_recyclerview_id.layoutManager = LinearLayoutManager(this);
Здесь "my_recyclerview_id" - это ваш идентификатор recyclerview из XML-файла макета.
Попробуй это 1-й способ
val layoutManager = LinearLayoutManager(applicationContext)
your_recyclerview_id!!.layoutManager = layoutManager
your_recyclerview_id!!.adapter = Your_adapter(applicationContext)
2-й способ
your_recyclerview_id!!.layoutManager=LinearLayoutManager(applicationContext)
your_recyclerview_id!!.adapter = Your_adapter(applicationContext);
your_recyclerview_id!!.adapter.notifyDataSetChanged()
Удачи с Котлином
Нет необходимости определять findviewByID в kotlin ... Android по умолчанию понимает все ресурсы и элементы представления.
можешь попробовать...
Используйте этот код только при работе с RecycleView в котлине.
rc_all_transaction.setLayoutManager(LinearLayoutManager(activity,
LinearLayoutManager.VERTICAL, true))
здесь rc_all_transaction - это идентификатор Recycleview, а остальные - это настройка Layout Manager
Спасибо
Это должно быть RecyclerView.layoutManager = LinearLayoutManager(this).
l в нижнем регистре и L в верхнем регистре.
это
val layoutManager = LinearLayoutManager(this)