2013-03-06 3 views
1

Я пытаюсь переопределить метод GetView так:NullPointerException переопределение GetView в arrayadapter

public class MyArrayAdapter extends ArrayAdapter { 
private final Context context; 
    private final ArrayList<DataList> values; 
    private final LayoutInflater li = LayoutInflater.from(this.getContext()); 


    public MyArrayAdapter(Context context, int textViewResourceId,ArrayList<DataList> values) { 
    super(context,textViewResourceId, values); 
    this.context = context; 
    this.values = values; 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     ViewHolder holder; 

     if(convertView==null){ 
      convertView=li.inflate(R.layout.simplerow,parent,false); 
      holder=new ViewHolder(); 
      holder.text=(TextView) convertView.findViewById(R.layout.simplerow); 
      convertView.setTag(holder); 
     }else{ 
      Log.d("a","entre else"); 
      holder=(ViewHolder)convertView.getTag(); 
     } 
     DataList b=values.get(1); 
     String c=b.toString(); 
     holder.text.setText(values.get(position).toString()); 
     try { 

     } catch (Exception e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 

     return convertView; 
    } 

    static class ViewHolder { 
     TextView text; 
    } 

каждый раз, когда я получаю в holder.text.setText(values.get(position).toString()) я получаю ошибку null pointer exception. VALUES - это arraylist типа DataList, а Datalist - мой класс, который возвращает две строки. Я знаю, что значения не равны нулю.

ответ

3

Причина holder.text бросает NullPointerException, потому что вы используете неправильный ID:

convertView.findViewById(R.layout.simplerow); 

Так findViewById() возвращает null. Попробуйте что-то вроде:

convertView.findViewById(R.id.textView); // I made up a name, but notice the difference? 
+0

XD благодарит за то, что это заставляло меня сумасшедший LOL, действительно, кто-то еще проверяет ваш код, потому что вы пропускаете такие вещи. большое спасибо!!!!! – user2033349

+0

Без проблем, иногда нам просто нужен дополнительный набор глаз. – Sam

Смежные вопросы