마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

커스텀리스트뷰 버튼클릭이벤트 오류

0 추천

public class MyCustomAdapter extends ArrayAdapter<Object>{
 
 private ArrayList<DoroDTO> data;

 
 
 View v;
 
 public MyCustomAdapter(Context context, int textViewResourceId,
   ArrayList items){
  super(context, textViewResourceId, items);
  this.data = items;
  
 }

  public View getView(int position, View convertView, ViewGroup parent) {
  // TODO Auto-generated method stub
   
   v=convertView;
   
   
   if( v == null)
   {
    LayoutInflater vi=(LayoutInflater)getContext().getSystemService(
      Context.LAYOUT_INFLATER_SERVICE);
    v= vi.inflate(R.layout.lv_layout, null);
   }
   
   final DoroDTO item=data.get(position);
   if(item != null)
   {
    
    
    TextView v_zipNo=(TextView)v.findViewById(R.id.text_one);
    TextView v_lnmAdres=(TextView)v.findViewById(R.id.text_two);
    TextView v_rnAdres=(TextView)v.findViewById(R.id.text_three);
    
    v_zipNo.setText(item.zipNo.toString());
    v_lnmAdres.setText(item.lnmAdres.toString());
    v_rnAdres.setText(item.rnAdres.toString());
   }
   v.setTag(position);
   
   Button infobtn = (Button)v.findViewById(R.id.searchinfobtn);
   infobtn.setOnClickListener(new Button.OnClickListener(){

    @Override
    public void onClick(View v) {
     // TODO Auto-generated method stub
     int position  = Integer.parseInt((v.getTag().toString()));
     DoroDTO doro = data.get(position);
     if (doro != null){
      System.out.println(doro.zipNo); 
     }
    }
    
   });
   
   return v;
  }

  
}

 

빨간색으로 친 코드부분에서 널포인터 오류가 나는데 이틀동안 계속 답이안나오네요 ㅠㅠ

gksxoo (520 포인트) 님이 2014년 4월 13일 질문

1개의 답변

+1 추천
infobtn에 setTag()를 안하셨으니

v.getTag()가 null일 수밖에요...
Lifeclue (7,930 포인트) 님이 2014년 4월 14일 답변
...