Java 从Listview多选向TexView添加数字

Java 从Listview多选向TexView添加数字,java,android,textview,Java,Android,Textview,我有一个数组显示在listview和一个textview中。如果要在列表视图中选择每个项目,请向textview中显示的计数器添加一个值。例如,如果我在listView中选择三,则texview必须显示值为3,如果我也选择两,则texview显示值为5 3+2 我制作了第二个listview_数组,其中包含我试图传递给integer的值,但它不起作用。有什么想法或帮助吗 这是我问题的代码: package com.javaya.proyecto002; import android.app.A

我有一个数组显示在listview和一个textview中。如果要在列表视图中选择每个项目,请向textview中显示的计数器添加一个值。例如,如果我在listView中选择三,则texview必须显示值为3,如果我也选择两,则texview显示值为5 3+2

我制作了第二个listview_数组,其中包含我试图传递给integer的值,但它不起作用。有什么想法或帮助吗

这是我问题的代码:

package com.javaya.proyecto002;

import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import android.widget.ListView;
import android.widget.TextView;

 ;

public class activity2 extends Activity {

    TextView tv1;
    ListView lv1;
    int counter;
    int counter2;
    String listview_array[] = { "ONE", "TWO", "THREE", "FOUR", "FIVE", "SIX",
            "SEVEN", "EIGHT", "NINE", "TEN" };
    String listview_array2[] = { "1", "2", "3", "4", "5", "6",
            "7", "8", "9", "10" };

    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity2);

        tv1 = (TextView)findViewById(R.id.textView1); 
        counter = 0;
        lv1 = (ListView) findViewById(R.id.listView1);
        lv1.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_activated_1, listview_array));
        lv1.setChoiceMode(lv1.CHOICE_MODE_MULTIPLE);
        lv1.setOnItemClickListener(new OnItemClickListener(){

        private String[] listview_array2 = { "1", "2", "3", "4", "5", "6",
                "7", "8", "9", "10" };

        public void onItemClick(AdapterView<?> arg0, View v, int position, long id){

         if (lv1.isItemChecked(position)); String name = this.listview_array2[position];
          counter2 = Integer.parseInt(name);
          counter = counter + counter2;
          tv1.setText("Total " + counter);


        }
                                        });

    }
            }
而不是:

String name = listview_array2.getItemAtPosition(position).toString();
使用:


非常感谢。它非常有用。现在,texview将正确更改并显示数字。但是仍然没有添加值,它只显示最后选择的项目…按照您的操作方式,每次单击时,计数器都会重置为0。尝试重新分配计数器=0;就在onCreate之后。它必须是外部的,这也是非常有用的!非常感谢。但我仍然有一个问题;现在,每次选中一个项目时,将该值添加到总数中,而不管它之前是否已被选中。我的意思是,如果选中,我只希望项目添加值,如果未选中,我需要从onItemClick内部的文本视图中删除该值。您必须以某种方式检查项目是否已在iListView_array2.isItemCheckedposition中进行检查。如果是计数,则删除它。谢谢您的回答。有了这个改变,现在当我取消选中该项时,它不会增加值,只会保持不变。我想,当我取消选中一个项目,该值是从总删除。。。我不知道我是否正确地解释了我自己,对不起我的英语
String name = this.listview_array2[position];