0

我有一个列表视图,在该列表视图中,我有 30 个带有编辑文本的项目,我在其中手动放置了值,然后我计算了在编辑文本上为 30 个项目设置的值的总和。但问题是它计算了几乎 10 个可见列表项的总数,我需要编辑文本的所有 30 个值。在 10 个项目视图变为空之后。如何解决这个问题。

totalpoints.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            /*for (int i = 0; i < summaryList.size(); i++) 
            {
                summaryList.get();

            }*/

            for (int i = 0; i < listView_subCategory.getCount(); i++) {
                view = listView_subCategory.getChildAt(i);
                if (view == null) {


                } else {
                    try {
                        EditText text = (EditText) view
                                .findViewById(R.id.et_date);
                        TextView tv_productname=(TextView) view.findViewById(R.id.textView_userName);

                        String points = text.getText().toString().trim();
                        String productname=tv_productname.getText().toString().trim();
                        int point = Integer.valueOf(points);
                        count_summary = count_summary + point;
                        String truetotal = Integer.toString(count_summary);
                        et_total.setText(truetotal);

                    } catch (Exception e) {
                        Toast toast1 = Toast.makeText(getActivity(),
                                "Fill Value First", Toast.LENGTH_SHORT);
                        toast1.setGravity(Gravity.CENTER, 0, 0);
                        toast1.show();
                    }

                }
            }
            count = 0;
        }

    });
4

1 回答 1

0

我想您应该考虑一种比迭代EditTexts更好的方法getChildAt()来收集所有值。我认为用户可以更改 EditTexts 中的值,您可以拥有Array30 个大小的值,并且每次用户输入/更改值时,您都会更改Array. 使用像这样更改 Array 中的值的侦听器。

于 2013-07-09T13:50:19.547 回答