按钮单击后更新listView - android

时间:2011-04-30 02:19:12

标签: android listview

我正在尝试将列表放在2个editTexts和2个按钮下。我想知道如何在按下按钮后让列表填充字符串。

现在,我有一个ArrayList,当按下该按钮时,它调用一个方法,该方法使用来自editTexts的数据并将值添加到ArrayList。当我运行它时,它强制关闭。我想要做的就是用新值更新列表。任何想法都非常感谢。

这是我的代码简化了很多。这就是我。

    public class test extends ListActivity{

    EditText currentText;   
    int current;
    EditText goalText;
    int goal;
            int[] xpTable = {1,200,30000,400000,500000};

    static ArrayList<String> objs = new ArrayList<String>();


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);         


        Button calc = (Button) findViewById(R.id.calc);
        calc.setOnClickListener(new View.OnClickListener() {
            public void onClick(View view) {
                myMethod();
            }

        });

    }

    public void myMethod(){

        currentText = (EditText)this.findViewById(R.id.xp);
        goalText = (EditText)this.findViewById(R.id.level);
        current = Integer.parseInt(currentText.getText().toString());
        goal = Integer.parseInt(goalText.getText().toString());
        int needed = xpTable[goal] - current;

        double laps = 0;
        double value1= 50.5;
        double value2= 100;



        laps = (needed/value1);
        if (laps % 1 != 0)
            laps = (laps - laps % 1) + 1;
        objs.add((int)laps + " value1");

        laps = (needed/value2);
        if (laps % 1 != 0)
            laps = (laps - laps % 1) + 1;
        objs.add((int)laps + " value2");


        setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, objs));
    }
}

对不起我的所有简单问题,这个社区非常乐于帮助。

1 个答案:

答案 0 :(得分:0)

只需使用新值重新设置适配器:

setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, your_new_value));