2015-04-27 3 views
1

Я пытаюсь создать приложение для Android, в котором я пытаюсь установить TextText() для текстового представления динамически. Но он бросает исключения нулевого указателяTextView в моем getView() внутри класса адаптера вызывает исключение null-указателя

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

ответ

3

вы пропустили convertView.setTag(holder1) в пункте если. Когда convertView не равно нуля, вы вызываете convertView.getTag(), который возвращается 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); 
} 
+0

Большого спасибо за ответ. Это сработало хорошо для меня –

+0

Добро пожаловать – Blackbelt