0

嗨,我是这个页面的新手。

我正在开发一个应用程序,在 android 上,我有一个填充数字列表的列表视图,在一列中我有项目的值。我可以将它们添加到变量总计中,我在列表视图上使用 onItemClick 事件,为了删除行,我想从总计变量中删除行值。

如果我有值 8 90 3,则总数为 101,但如果我删除行 id 1 的值 90,我如何从总数中删除它并将新总数设置为 11,即减法后的新总数.

我可以实现一个解决方案,但如果我输入两个值,它只会减去值,它在我的实现中给了我一个错误:

 mListView.setOnItemClickListener(new OnItemClickListener() {
         public void onItemClick(AdapterView<?> a, View v, int position, long id) {


             int k = (int) id;

             List<Data> dcontrol;
             dcontrol = data; 

             for(Data dt: dcontrol){
                residuo = Integer.parseInt(dt.getY());
               }

             resultNumber = resultNumber - residuo; 
             System.out.println(resultNumber);

             updateTextField();


             sh.deleteCloudPrint(data.remove(k));

             mAdapter.notifyDataSetChanged();

             }

         });
4

1 回答 1

0

如果您的适配器看起来像:

ArrayAdapter<String> a2 = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, android.R.id.text1, al);

然后你可以试试这个:

listView.setAdapter(a2);
        listView.setOnItemClickListener(new OnItemClickListener() 
                                            {
                                                public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) 
                                                {
                                                    String s1;
                                                    s1 = (String) ((TextView)arg1).getText();

                                                    int value = Integer.parseInt(s1);

                                                    total = total - value;
                                                } 
                                            }
                                        );

希望这段代码对你有用。

于 2013-05-02T17:07:56.547 回答