我正在尝试创建一个 android 应用程序,我在其中尝试动态地为 TextView 设置 setText()。但是会抛出空指针异常
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder1 holder1;
// LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
Log.i("&&&&& convert view is null", "&&&&& convert view is null");
LayoutInflater inflater = activity.getLayoutInflater();
if(convertView == null){
convertView = inflater.inflate(R.layout.searchlist_repeat_items, parent, false);
Log.i("@@@@@ convert view is null", "@@@@@ convert view is null");
holder1 = new ViewHolder1();
holder1.companyName_textView = (TextView) convertView.findViewById(R.id.companyName_textView);
}else{
holder1 = (ViewHolder1) convertView.getTag();
}
holder1.companyName_textView.setText("Checking text");
return convertView;
}
static class ViewHolder1 {
TextView companyName_textView;
}
最佳答案
您在 if 子句中错过了 convertView.setTag(holder1)
。当 convertView
不为 null 时,您正在调用返回 null
convertView.getTag()
if(convertView == null){
convertView = inflater.inflate(R.layout.searchlist_repeat_items, parent, false);
Log.i("@@@@@ convert view is null", "@@@@@ convert view is null");
holder1 = new ViewHolder1();
holder1.companyName_textView = (TextView) convertView.findViewById(R.id.companyName_textView);
convertView.setTag(holder1);
}
关于android - 适配器类中我的 getView() 中的 TextView 抛出空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29906152/