Кнопка onclick и edittext

#java #android #android-layout #android-edittext #android-button

#java #Android #android-макет #android-edittext #android-кнопка

Вопрос:

     for(int x = 1; x < i ; x  ){
        // VIEWS
         TextView tvx = new TextView(this);
         EditText etx = new EditText(this);
         EditText editx = new EditText(this);
         // ADD VIEW
        //set properties

        ll1.addView(tvx);
        ll1.addView(etx);
        ll1.addView(editx);
            // sets the ingredient  and the amount and cal corresponding

        switch(x){

        case 1: tvx.setText("Chicken");
                etx.setText("200");
                editx.setText("100g");

            break;
        case 2:tvx.setText("eggs");
                etx.setText("350");
                editx.setText("100g");
            break;
        case 3:tvx.setText("Bacon");
                etx.setText("400");
                editx.setText("100g");

            break;
        case 4:
            tvx.setText("Salad");
            etx.setText("200");
            editx.setText("100g");

        }



        //  // // // // // // // 


        btn2.setOnClickListener(new OnClickListener(){

            @Override
            public void onClick(View arg0) {


            }



        });
 

Привет, ребята, мой код включает в себя цикл for таким образом, что он генерирует строку, включающую textview и 2
edit text. Как бы то ни было, я не знаю, что вставить в метод onClick btn2, поскольку у меня возникла проблема с попыткой однозначно идентифицировать каждый редактируемый текст.
Например, я не могу извлечь конкретный ввод пользователем, если какой-либо из этих редактируемых текстов должен был измениться.

Ответ №1:

вы можете получить текст из обоих editexts и сравнить с текстом, который вы установили ранее.

      @Override
     public void onClick(View arg0) {
        if (etx.getText.toString().matches("400")){
           //some code here
        } else if (etx.getText.toString().matches("200")){
            //some code here
        } 

       }
 

Комментарии:

1. Это действительно не лучший способ сделать это.

Ответ №2:

Установите идентификаторы для TextView и EditText при добавлении строки с помощью textView.setId(int id);

Затем вы сможете ссылаться на них, используя тот же идентификатор.

 TextView textView = (TextView) findViewById(id);