android.view.TextureView 不能投射到 android.widget.TextView |无法使其工作



我正在Android Studio中构建一个应用程序,您可以在SQLite数据库中搜索该应用程序,编译时不会给我任何错误,但是当它在虚拟设备中运行时,它无法打开,应用程序崩溃。

Logcat说演员表中有错误,但我可以找到它:

java.lang.ClassCastException: android.view.TextureView 不能强制转换为 android.widget.TextView

请注意,我正在学习,所以肯定是我缺少一些东西或语法错误

代码如下

class SearchViewHolder extends RecyclerView.ViewHolder{
public TextView name,address,email,phone;
public SearchViewHolder(View itemView){
super(itemView);
name = (TextView)itemView.findViewById(R.id.name);
address = (TextView)itemView.findViewById(R.id.address);
email = (TextView)itemView.findViewById(R.id.email);
phone = (TextView)itemView.findViewById(R.id.phone);
}
}
public class SearchAdapter extends RecyclerView.Adapter<SearchViewHolder>{
private Context context;
private List<Friend> friends;
public SearchAdapter(Context context, List<Friend> friends) {
this.context = context;
this.friends = friends;
}
@Override
public SearchViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
LayoutInflater inflater = LayoutInflater.from(parent.getContext());
View itemView = inflater.inflate(R.layout.layout_item,parent,false);
return new SearchViewHolder(itemView);
}
@Override
public void onBindViewHolder(@NonNull SearchViewHolder holder, int position) {
holder.name.setText(friends.get(position).getName());
holder.address.setText(friends.get(position).getAddress());
holder.email.setText(friends.get(position).getEmail());
holder.phone.setText(friends.get(position).getPhone());
}
@Override
public int getItemCount() {
return friends.size();
}
}

有什么建议吗?

检查你的layout_itemxml。在那里,您应该错误地将TextView定义为至少一次TextureView

最新更新