繁体   English   中英

使用回收器视图/对象从 EditText 字段中获取字符串

[英]Getting strings from EditText fields using a recycler view / object

我无法理解如何将在多个编辑文本字段中输入的值放入一个数组中。

这是我的代码:

    class MyViewHolder extends RecyclerView.ViewHolder{

    protected EditText editText;

    public MyViewHolder(View itemView) {
        super(itemView);

        editText = (EditText) itemView.findViewById(R.id.editid);

        editText.addTextChangedListener(new TextWatcher() {
            @Override
            public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {

            }

            @Override
            public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {

                editModelArrayList.get(getAdapterPosition()).setEditTextValue(editText.getText().toString());
            }

            @Override
            public void afterTextChanged(Editable editable) {

            }
        });

    }

}

        for (int i = 0; i < CustomAdapter.editModelArrayList.size(); i++){

        tv.setText(tv.getText() + " "+ CustomAdapter.editModelArrayList.get(i).getEditTextValue());

    }

我想做的是使用此代码 CustomAdapter.editModelArrayList.get(i).getEditTextValue()); 获取一个字符串中的所有值,然后从那里开始,但是当我这样做时,我只能获取在最后一个文本字段中输入的值。

而不是成员变量editText ,创建一个最终的局部变量并在侦听器中使用它:

final EditText editText2 = (EditText) itemView.findViewById(R.id.editid);

editText2.addTextChangedListener(new TextWatcher() {
.
.
.
    @Override
    public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {

        editModelArrayList.get(getAdapterPosition()).setEditTextValue(editText2.getText().toString());
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM