Android空对象引用异常
我正在创建一个应用程序,它从本地Android空对象引用异常,android,json,gson,Android,Json,Gson,我正在创建一个应用程序,它从本地json文件读取数据,并将其显示为Listview。我还为此创建了一个自定义适配器。问题是,当我使用getView方法设置列表视图时,它会显示以下错误 java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference at
json
文件读取数据,并将其显示为Listview
。我还为此创建了一个自定义适配器。问题是,当我使用getView
方法设置列表视图时,它会显示以下错误
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference at com.example.nyqmind.jsondemo.MainActivity$MyCustomAdapter.getView
这是我的密码
public View getView(int position, View convertView, ViewGroup parent){
View row=convertView;
ViewHolder holder;
if(row==null) {
LayoutInflater inflater = (LayoutInflater) con.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
row = inflater.inflate(R.layout.listview_layout, parent, false);
holder=new ViewHolder();
holder.id= (TextView) findViewById(R.id.textView2);
holder.name= (TextView) findViewById(R.id.textView4);
row.setTag(holder);
}
else
{
holder= (ViewHolder) convertView.getTag();
}
Employee list=emp.get(position);
holder.id.setText(list.getid());
holder.name.setText(list.getName());
return row;
}
帮我解决这个问题 变化
holder.id= (TextView) findViewById(R.id.textView2);
holder.name= (TextView) findViewById(R.id.textView4);
到
您的holder.id
和holder.name
在
holder.id.setText(list.getid());
holder.name.setText(list.getName());
另外,如果list.getId()
返回一个数字,请在设置文本之前将其转换为字符串,否则将得到ResourceNotFoundException
holder.id.setText(list.getid());
holder.name.setText(list.getName());