Java 尝试创建OnClickListener时出错
我试图创建onclicklistener函数,但在onBindViewHolder上出错 我试图制作一个基于id_daftar的cardview,我使用的数据库位于Web服务器上 这是我的适配器Java 尝试创建OnClickListener时出错,java,android,mysql,android-studio,onclicklistener,Java,Android,Mysql,Android Studio,Onclicklistener,我试图创建onclicklistener函数,但在onBindViewHolder上出错 我试图制作一个基于id_daftar的cardview,我使用的数据库位于Web服务器上 这是我的适配器 import... import java.util.ArrayList; public class DataAdapter extends RecyclerView.Adapter<DataAdapter.ViewHolder> { private ArrayList<A
import...
import java.util.ArrayList;
public class DataAdapter extends RecyclerView.Adapter<DataAdapter.ViewHolder> {
private ArrayList<AndroidVersion> android;
//----------------------------------------------------------------------------------------------
public DataAdapter (ArrayList<AndroidVersion> android){
this.android = android;
}
@NonNull
@Override
public DataAdapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.card_row,parent, false);
return new ViewHolder(v);
}
//----------------------------------------------------------------------------------------------
@Override
public void onBindViewHolder(@NonNull DataAdapter.ViewHolder holder,final int position) {
holder.tv_nama_pengusaha.setText(android.get(position).getNama_pengusaha());
holder.tv_nama_usaha.setText(android.get(position).getNama_usaha());
holder.tv_alamat.setText(android.get(position).getAlamat());
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(v.getContext(), DetailActivity.class);
i.putExtra("nama_usaha", android.get(position).getNama_usaha());
v.getContext().startActivity(i);
}
});
}
//----------------------------------------------------------------------------------------------
@Override
public int getItemCount() {
return android.size();
}
public class ViewHolder extends RecyclerView.ViewHolder{
private TextView tv_nama_pengusaha, tv_nama_usaha, tv_alamat, tv_id_daftar, tv_rt,
tv_rw, tv_desa, tv_kecamatan, tv_kategori;
public ViewHolder(@NonNull View itemView) {
super(itemView);
// implement onClick
tv_nama_pengusaha = (TextView)itemView.findViewById(R.id.tv_nama_pengusaha);
tv_nama_usaha = (TextView)itemView.findViewById(R.id.tv_nama_usaha);
tv_alamat = (TextView)itemView.findViewById(R.id.tv_alamat);
}
}
}
这就是我犯的错误
有人能解释一下错误的含义和解决方法吗?检查
R.layout.card\u行中找到的所有文本视图是否存在,并且它们的ID是否正确:
tv_nama_pengusaha
tv_nama_usaha
tv_alamat
该错误意味着当您调用setText()
时,您的holder
中的一个TextView
为空。这将最终表明,ID为tv_nama_pengusaha
、tv_nama_usaha
或tv_alamat
的至少有一个不在当前的卡片行
布局中。
tv_nama_pengusaha
tv_nama_usaha
tv_alamat