在Android Studio中转换后,Kotlintypes不匹配

我试图将现有的android代码转换为Kotlin代码。 但是,它显示以下错误

在这里输入图像说明

转换前的代码。

recyclerView.setAdapter(new RecyclerView.Adapter() { @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { LayoutInflater layoutInflater = getLayoutInflater(); return new RecyclerView.ViewHolder(layoutInflater.inflate(R.layout.item_restaurant2, parent, false)) { }; } @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { } @Override public int getItemCount() { return 3; } }); 

转换后的代码

 recyclerView!!.setAdapter(object : RecyclerView.Adapter() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder { val layoutInflater = layoutInflater return object : RecyclerView.ViewHolder(layoutInflater.inflate(R.layout.item_restaurant2, parent, false)) { } } override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) { } override fun getItemCount(): Int { return 3 } }) 

object : RecyclerView.Adapter() { – 当generics涉及时,Kotlin确实不喜欢Java的原始types。 指定ViewHoldertypes可能会修复您的代码。

例如, object : RecyclerView.Adapter() {