Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/201.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当我滚动列表时,我的编辑文本值在android上被擦除?_Android - Fatal编程技术网

当我滚动列表时,我的编辑文本值在android上被擦除?

当我滚动列表时,我的编辑文本值在android上被擦除?,android,Android,当我滚动列表时,我的编辑文本值被删除。实际上,我从数据库中获取所有值,如果我想更改编辑文本值,在我滚动列表后,我更改的值将被删除…我尝试了许多方法…我无法得到任何答案…如果有人知道,请解决我的问题…我想将我编辑的值存储在单独的数组中,并在按“更新”按钮时再次发送到后端…是,因为列表视图重用子视图请尝试此操作。如果listview中的项很少,请尝试删除'if(convertView==null)`条件,否则将导致性能不佳可能重复的项 @Override public View getView(f

当我滚动列表时,我的编辑文本值被删除。实际上,我从数据库中获取所有值,如果我想更改编辑文本值,在我滚动列表后,我更改的值将被删除…我尝试了许多方法…我无法得到任何答案…如果有人知道,请解决我的问题…我想将我编辑的值存储在单独的数组中,并在按“更新”按钮时再次发送到后端…

是,因为列表视图重用子视图请尝试此操作。如果listview中的项很少,请尝试删除'if(convertView==null)`条件,否则将导致性能不佳可能重复的项
 @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;


            }