[英]Cannot resolve method setText() in imageView
I'm trying to do a simple project with Recyclerview and Cardview in Android Studio following this tutorial .我正在尝试按照本教程在 Android Studio 中使用 Recyclerview 和 Cardview 做一个简单的项目。 But I'm getting an error in
onBindViewHolder
function line 32 saying it can't resolve the method setText()
in imageView
and I don't know why since mTitle
is not an ImageView
and it is a TextView
:但我发现了一个错误
onBindViewHolder
功能线32说,它不能解析的方法setText()
在imageView
,我不知道为什么,因为mTitle
不是一个ImageView
,它是一个TextView
:
package com.example.demoproject;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.ArrayList;
import android.content.Context;
public class MyAdapter extends RecyclerView.Adapter<MyHolder> {
Context c;
ArrayList<Model> models; // this array list creates a list of arrays which parameters define in my model class
public MyAdapter(Context c, ArrayList<Model> models) {
this.c = c;
this.models = models;
}
@NonNull
@Override
public MyHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.row,null); // this line inflate my row
return new MyHolder(view); // this will return my view to holder class
}
@Override
public void onBindViewHolder(@NonNull MyHolder myHolder, int i) {
myHolder.mTitle.setText(models.get(i).getTitle()); // here i is position
}
@Override
public int getItemCount() {
return 0;
}
}
MyHolder.java : MyHolder.java :
package com.example.demoproject.
import android.view.View;
import android.widget.ImageView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
public class MyHolder extends RecyclerView.ViewHolder {
ImageView mImaeView, mTitle;
public MyHolder(@NonNull View itemView) {
super(itemView);
this.mImaeView = itemView.findViewById(R.id.imageIv);
this.mTitle = itemView.findViewById(R.id.titleTv);
}
}
Your mTile
is not a TextView
it is a ImageView
.你的
mTile
不是一个TextView
它是一个ImageView
。 Change it to this:改成这样:
ImageView mImaeView;
TextView mTitle;
And make sure that itemView.findViewById(R.id.titleTv);
并确保
itemView.findViewById(R.id.titleTv);
returns TextView
.返回
TextView
。 Check in Your xml file (recycler view item) that You made it eveything well and titleTv
is a TextView
检查您的 xml 文件(回收站视图项),您已经做好了一切,并且
titleTv
是一个TextView
因为 setText() 方法是在 textview 上而不是在 imageView 上设置的
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.