如何基于其他EditText添加EditText

时间:2019-11-16 14:35:01

标签: android

我是android新手,这是我的问题。

我有一个按钮,当我单击它时可以无限期地创建2个EditText,这些EditText从另一个XML文件扩展并保存在2个ArrayList中。然后从第一个EditText开始,尝试根据第二个EditText中键入的内容添加元素。因此,例如,我用我的按钮创建了许多行,然后键入数字:

12 5

12 5

10 6

10 6

10 3

10 7

20 7

10 4

我想在右边的数字相等时自动添加左边的EditText,然后在这样的TextView中显示它:

24 x 5

20 x 6

10 x 3

30 x 7

10 x 4

有可能吗?抱歉,如果我不够清楚。

这是我的代码:

public class MainActivity extends AppCompatActivity {

    ArrayList<EditText> array1 = new ArrayList<>();
    ArrayList<EditText> array2 = new ArrayList<>();


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final TextView text = findViewById(R.id.text);
        Button button = findViewById(R.id.button);
        final LinearLayout ll = findViewById(R.id.ll);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                View v = getLayoutInflater().inflate(R.layout.row,null);

                final EditText quantity = v.findViewById(R.id.quantity);
                final EditText price = v.findViewById(R.id.price);


                array1.add(quantity);
                array2.add(price);

                ll.addView(v);

                price.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) {

                        for ( int a = 0; a <array1.size(); a++)
                        {
                            EditText edit1 = array1.get(a);
                            EditText edit2 = array2.get(a);
                        }



                    }

                    @Override
                    public void afterTextChanged(Editable editable) {

                    }
                });


            }
        });

    }
}

0 个答案:

没有答案