数据类里面包含一个集合,设置数据的时候出现空指针?

public View getView(final int position, View convertView, ViewGroup parent) {
               int type = getItemViewType(position);
               Holder1 holder1 = null;
               Holder2 holder2 = null;
               if (convertView == null) {
                   switch (type) {
                       case TYPE_ONE:
                           convertView = inflater.inflate(R.layout.item_inspection_two, null);
                           holder2 = new Holder2(convertView);
                           holder2.tvName.setText(lstData.get(position).getsItemName());
//                            query.SaveDetials.get(position).setnItemSerialNo("1");                //错误行
//                            query.SaveDetials.get(position).seteItemType("0");                        //错误行                            query.SaveDetials.get(position).setsItemName(lstData.get(position).getsItemName());//错误行                            if (lstData.get(position).geteDefaultType() == "0") {
                               holder2.sCheckType.setChecked(true);
                           } else {
                               holder2.sCheckType.setChecked(false);
                           }
                           holder2.sCheck.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
                               @Override
                               public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                                   if (isChecked) {
                                       query.SaveDetials.get(position).seteCheckType("1");
                                   } else {
                                       query.SaveDetials.get(position).seteCheckType("0");
                                   }
                               }
                           });
                           holder2.sCheckType.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
                               @Override
                               public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                                   if (isChecked) {
                                       query.SaveDetials.get(position).seteCheckResult("1");
                                   } else {
                                       query.SaveDetials.get(position).seteCheckResult("0");
                                   }
                               }
                           });
                           convertView.setTag(holder2);
                           break;
                       case TYPE_TWO:
                           convertView = inflater.inflate(R.layout.item_inspection_one, null);
                           holder1 = new Holder1(convertView);
                           holder1.tvName.setText(lstData.get(position).getsItemName());
//                            query.SaveDetials.get(position).setnItemSerialNo("1");        //错误行
//                            query.SaveDetials.get(position).seteItemType("1");                //错误行
                           holder1.editQty.setText(lstData.get(position).getsDefaultValue());
                           holder1.sCheck.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
                               @Override
                               public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                                   if (isChecked) {
                                       query.SaveDetials.get(position).seteCheckType("1");
                                   } else {
                                       query.SaveDetials.get(position).seteCheckType("0");
                                   }
                               }
                           });
                           convertView.setTag(holder1);
                           break;
                       default:
                           break;
                   }
               } else {
                   switch (type) {
                       case TYPE_ONE:
                           holder2 = (Holder2) convertView.getTag();
                           holder2.tvName.setText(lstData.get(position).getsItemName());
                           break;
                       case TYPE_TWO:
                           holder1 = (Holder1) convertView.getTag();
                           holder1.tvName.setText(lstData.get(position).getsItemName());
                           break;
                       default:
                           break;
                   }
               }
               return convertView;
           }

NieXiaoSeng
浏览 1214回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android