如何从ListView中的所有EditText中检索值

时间:2011-09-21 05:58:14

标签: android listview android-edittext

我的ListView

中有这样的结构

TextView EditText

TextView EditText

TextView EditText

   Btton

当我点击确定按钮时。如何从每个EditText中检索值并在对话框上打印它的总和...任何想法....?

3 个答案:

答案 0 :(得分:7)

假设您的行布局类似于

的LinearLayout    - TextView    - 编辑文字

您可以使用类似

的内容
for(int i =0;i<getListView.getChildCount();i++){
    LinearLayout layout = getListView.getChildAt(i);

    String text = layout.getChildAt(1).getText();
}

答案 1 :(得分:0)

我会这样做

在我的ListAdapter中,在创建行时,在ArrayList中保存对列表视图的引用

单击该按钮,从适配器获取数组列表并遍历所有edittexts

答案 2 :(得分:-1)

查看TextWatcher。使用以下方法添加:

myEditText1.addTextChangedListener(new GenericTextWatcher(myEditText1));
myEditText2.addTextChangedListener(new GenericTextWatcher(myEditText2));
myEditText3.addTextChangedListener(new GenericTextWatcher(myEditText3));

...

private class GenericTextWatcher implements TextWatcher{

    private View view;
    private GenericTextWatcher(View view) {
        this.view = view;
    }

    public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}
    public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}

    public void afterTextChanged(Editable editable) {
        String text = editable.toString();
        switch(view.getId()){
            case R.id.editText1_id:
                // do something
                break;
            case R.id.editText2_id:
                // do something
                break;
            case R.id.editText3_id:
                // do something
                break;
        }
    }
}