adapter getView报空

午后一小憩
  • 2.9k

@Override

public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder viewHolder;
    if(convertView==null){
        viewHolder=new ViewHolder();
        convertView= LayoutInflater.from(context).inflate(R.layout.list_item,null);
        viewHolder.textView= (TextView) convertView.findViewById(R.id.text);
        convertView.setTag(viewHolder);
    }else {
        viewHolder= (ViewHolder) convertView.getTag();
    }
    viewHolder.textView.setText(list.get(position));
    return convertView;
}


java.lang.NullPointerException
        at android.view.LayoutInflater.from(LayoutInflater.java:211)
        at com.jxthelp.adapter.DrawerAdapter.getView(DrawerAdapter.java:48)
        
        
        48为:convertView= LayoutInflater.from(context).inflate(R.layout.list_item,null);
        
        为何会报空指针
回复
阅读 3.2k
3 个回答

1、确定 你这个 context 是否是null
2、确定 R.layout.list_item 这个资源文件是否在。

debug 跟踪一下自然解决问题,空指针都是因为没有初始化造成的

应该是context为null,adapter初始化时没有赋初值,如果R.layout.list_item不存在的话,是没有办法编译的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏