Parthiban M
Parthiban M

Reputation: 1104

TextView in my getView() inside a adapter class throws null pointer exception

I'm trying to create a android application, in which I try to setText() for a textview dynamically. But it throws null pointer exception

@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;
}

Upvotes: 1

Views: 198

Answers (1)

Blackbelt
Blackbelt

Reputation: 157437

you missed convertView.setTag(holder1) in the if clause. When convertView is not null, you are calling convertView.getTag() which is returning null

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);
}

Upvotes: 3

Related Questions