Я пытаюсь привести мой RecyclerView
идентификатор макета, чтобы не повторять код
У меня есть 3 RecyclerView
в моем макете, я хочу иметь только один метод, который берет идентификаторы RecyclerView и устанавливает их без их адаптера.
Я сделал следующее:
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setupRecyclerViewLayoutManager(R.id.first_rv)
setupRecyclerViewLayoutManager(R.id.second_rv)
setupRecyclerViewLayoutManager(R.id.third_rv)
}
private fun setupRecyclerViewLayoutManager(recyclerViewId:Int){
val recyclerView = recyclerViewId as RecyclerView
recyclerView.layoutManager = LinearLayoutManager(requireActivity(),LinearLayoutManager.HORIZONTAL,false)
recyclerView.setHasFixedSize(true)
}
Но этот код завершается ошибкой при приведении
java .lang.ClassCastException: java .lang.Integer не может быть приведен к androidx.recyclerview.widget.RecyclerView в com.ui.home.HomeFragment.setupRecyclerViewLayoutManager (HomeFragment.kt: 36) в com.ui. home.HomeFragment.onViewCreated (HomeFragment.kt: 29)
Почему я не могу привести целочисленные идентификаторы этих RecyclerView
?