我想为动态生成的编辑文本实现文本观察器,并希望在这些编辑文本中获取文本 [英] i want to implement textwatcher for dynamically generated edittexts and want to get text in those edittexts

查看:19
本文介绍了我想为动态生成的编辑文本实现文本观察器,并希望在这些编辑文本中获取文本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

protected void updateTable() {
    // TODO Auto-generated method stub

    final TableLayout tl = (TableLayout) findViewById(R.id.settingtable);
    tl.removeAllViews();

    for(int i=0; i<10; i++) {


        final TableRow tablerow = new TableRow(this);
        tablerow.setLayoutParams(new LayoutParams(
                LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));

        final TextView deviceedit = new TextView(this);

        deviceedit.setText(i+1);
        deviceedit.setTextColor(Color.BLACK);
        deviceedit.setGravity(Gravity.CENTER);
        deviceedit.setTextSize(20);
        deviceedit.setBackgroundResource(R.drawable.lighter_cell_shape);

        tablerow.addView(deviceedit);


        final EditText pondedit = new EditText(this);
        pondedit.setText("");
        pondedit.setTextColor(Color.BLACK);
        pondedit.setGravity(Gravity.CENTER);
        pondedit.setBackgroundResource(R.drawable.lighter_cell_shape);
        tablerow.addView(pondedit);
        pondedit.addTextChangedListener(new TextWatcher() {

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub

            }

            @Override
            public void beforeTextChanged(CharSequence s, int start, int count,
                    int after) {
                // TODO Auto-generated method stub

            }

            @Override
            public void afterTextChanged(Editable s) {
                // TODO Auto-generated method stub


            }
        });

        tl.addView(tablerow);
    }

}

当我在生成的 edittexts 中输入文本时,如何从 edittexts 中获取这些文本并引用这些 textViews,即 1-> hai , 2-> bye 像这样.TextWatcher 是否对这个上下文有用?我想从edittexts中获取数据并参考TextView将数据保存在数据库中.

When I entered text in generated edittexts, how can I get those texts from edittexts with references to those textViews i.e, 1-> hai , 2-> bye like this. Is TextWatcher useful for this context or not? I want to get data from edittexts and to save the data in database with reference to TextView.

推荐答案

可能您希望在单独的 for 循环中执行此操作.

probably you will want to do this in separated for loops.

并获取在每个 EditText 中输入的文本,您需要这样的东西:

and to get the text entered in each EditText you need something like this:

ArrayList<String> textFromEditText = new ArrayList<>();

textFromEditText.add(pondedit.getText().toString());

不要忘记调用 .toString(); 方法,因为从 EditText 你得到一个 Editable 类型的对象.

dont forget to call the .toString(); method since the from EditText you get a Editable type object.

在 ArrayList 中准备好数据后,只需在另一个 for 循环中调用它:

once you have your data ready in the ArrayList just call this in another for loop:

for(i = 0;i < textFromEditText.size();i++){   
     final TextView deviceedit = new TextView(this);

     //other code of your textView


     deviceedit.setText(textFromEditText.get(i));

}

也许有人可以补充我的答案.

maybe somebody can complement my answer.

这篇关于我想为动态生成的编辑文本实现文本观察器,并希望在这些编辑文本中获取文本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆