【发布时间】:2019-11-23 22:47:42
【问题描述】:
我是使用 Kotlin 的新手,我尝试将我的项目从 java 移植到 kotlin。基本上,我有一个帮助类尝试初始化 recyclerview 布局、适配器等。
在java中: 适配器
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder>
{
...
public static class ViewHolder extends RecyclerView.ViewHolder
{
...
}
...
}
我的辅助函数:
public void init(RecyclerView recyclerView, boolean horizontal, boolean divider, RecyclerView.Adapter adapter, Context context)
当我创建适配器并调用函数时,它工作正常。
但是在 Kotlin 中: 适配器
class MyAdapter(...) : RecyclerView.Adapter<MyAdapter.ViewHolder>() {
...
inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
...
}
...
}
辅助函数
fun init(recyclerView : RecyclerView, horizontal: Boolean, divider: Boolean, adapter: RecyclerView.Adapter<RecyclerView.ViewHolder>, context: Context) {
...
}
当我创建适配器并调用函数时
val myAdapter = MyAdapter(...)
helper.init(listView, false, false, myAdapter, this)
我在需要的地方遇到不匹配错误:RecyclerView.Adapter<RecyclerView.ViewHolder> 并找到:MyAdapter
继承明智,它应该有效吗?还是我错过了什么?
谢谢!
【问题讨论】:
-
你在哪里调用这个函数?问题是在您的情况、活动或片段中,
this是谁? -
嗨,“这个”是指活动
标签: android kotlin android-recyclerview