2012-04-23 37 views
0

我正在创建自定义列表视图。将数据传递给edittext。当时它显示一个错误自定义列表视图中dataparsing.nullpointer异常的错误

   i try this code 
       public View getView(int position, View convertView, ViewGroup parent) { 
    final ViewHolder holder; 


     if (convertView == null) { 
      holder = new ViewHolder(); 

      convertView = inflater.inflate(R.layout.editfoodmenulistview, null); 
      holder.caption = (EditText) convertView 
        .findViewById(R.id.foodmenu); 

      holder.caption1=(ImageView) convertView.findViewById(R.id.foodimage); 
      convertView.setTag(holder); 
     } else { 
      holder = (ViewHolder) convertView.getTag(); 
     } 

     //Fill EditText with the value you have in data source 

     holder.caption.setText(itemnames[position]); 
     holder.caption.setId(position); 
     holder.caption.setFocusableInTouchMode(true); 

     holder.caption1.setImageBitmap(bmps[position]);  

     //we need to update adapter once we finish with editing 
     holder.caption.setOnFocusChangeListener(new OnFocusChangeListener() { 
      public void onFocusChange(View v, boolean hasFocus) { 
      if(!hasFocus) 
      { 
        final int position = v.getId();  
        final EditText Caption = (EditText) v; 
        Caption.setFocusable(true); 

        holder.caption.setFocusable(true); 
        arr.remove(holder.caption.getId()); 
        arr.add(holder.caption.getId(),holder.caption.getText().toString()); 


      } 
       } 

     }); 



     return convertView; 
    } 
    } 

     view holder(this is class) 

class ViewHolder { 
EditText caption; 
ImageView caption1; 
} 

class ListItem { 
String caption; 
} 

上述viewholder类,我用一些其他类的get EditText上。现在我想重复使用相同的EditText到另一个类..它显示了一个error..please告诉我如何解决这个错误

+0

嘿能你在这里添加Logcat,这样可以帮助解决问题 – Herry 2012-04-23 07:24:35

回答

0

更改此:

convertView = inflater.inflate(R.layout.editfoodmenulistview, null); 

要这样:

convertView = inflater.inflate(R.layout.editfoodmenulistview, parent, false);