0
 @Override
public View getView(final int position, View convertView, ViewGroup parent) {
    final ViewHolder viewHolder;
    final Item item = getItem(position);

    View view = null;
    convertView = null;

                if (convertView == null) {
                    convertView = LayoutInflater.from(getContext()).inflate(R.layout.godown_list_iemname_activity, parent, false);

                    viewHolder = new ViewHolder();
                    viewHolder.text = (TextView) convertView
                            .findViewById(R.id.list_label_name);
                    viewHolder.edit = (EditText) convertView
                            .findViewById(R.id.qty_editText);
                    viewHolder.text_id = (TextView) convertView
                            .findViewById(R.id.list_label_qty);
                    convertView.setTag(viewHolder);
                } else {
                    viewHolder = (ViewHolder) convertView.getTag();
                }

                // Populate the data into the template view using the data object
                viewHolder.text.setText(itemlist.get(position).getId());
                viewHolder.edit.setText(itemlist.get(position).getQty());
                viewHolder.text_id.setText(itemlist.get(position).getItemcode());


                viewHolder.edit.addTextChangedListener(new TextWatcher() {
                    @Override
                    public void beforeTextChanged(CharSequence s, int start, int count, int after) {

                    }

                    @Override
                    public void onTextChanged(CharSequence s, int start, int before, int count) {
                        sb = new StringBuilder(s.length());
                        sb.append(s);


                        viewHolder.edit.setTextColor(Color.RED);
                        String ts =String.valueOf(viewHolder.text.getText()) +"_"+sb.toString();
                        value.add(ts);
                        System.out.println("array list size1"+value.size());
                        System.out.println("array list size1"+value);

                        SharedPreferences pref = getContext().getSharedPreferences("MyPref", MODE_PRIVATE);
                        SharedPreferences.Editor editor = pref.edit();
                        editor.putString("Value", String.valueOf(value));
                        editor.clear();
                        editor.commit();

                    }

                    @Override
                    public void afterTextChanged(Editable s) {

                    }
                });
                value.clear();
                System.out.println("array list size"+ value);

                return convertView;


            }

when i scroll the list my edit text values are erased..actually i get all the values from the database,if i want to change the edit text value , after i scroll the list my changed values are removed....i tried many ways....i dint get any answer....can you please solve my problem if anybody knows...i want to store my edited values in separate array and send to back end again when pressing update button.....

D.J
  • 1,439
  • 1
  • 12
  • 23

0 Answers0