嗨,我是这个页面上的新人。
我正在开发一个应用程序,在android上,我有一个列表视图,填充一个数字列表,在一列我有项目的价值。我可以添加它们并将它们总计为变量总和,我在listview上使用onItemClick事件,按照删除行的顺序,我想从总变量中删除行值,例如。
如果我的值为8 90 3,则总数为101,但是如果我删除值为90的行id 1,我如何从总计中删除它并将新总数设置为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();
}
});
答案 0 :(得分: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;
}
}
);
希望此代码适合您。