Как добавить Изменить текстовые значения в список просмотра - PullRequest
0 голосов
/ 30 октября 2019

Я новичок в программировании. В настоящее время я создаю проект, в котором я использовал 3 элемента редактирования текста, одну кнопку и один вид списка.

Я могу добавить все 3 значения редактирования текста в виде списка на кнопкущелкните, но он запускается только один раз, это означает, что он показывает все 3 значения в представлении списка, но когда бы я ни вводил новое значение, он удаляет предыдущее, а также, если я хочу добавить 5 раз в представлении списка, предыдущее не следует вместо этого удалятья получаю все значения 5 раз в моем списке. Кроме того, представление списка происходит по вертикали, в котором я нуждаюсь, если я нажимаю кнопку 5 раз, она должна хранить все три значения редактирования текста 5 раз по горизонтали.

Я пробовал использовать цикл for, но он не работает для меня, какничего не изменилось.

public class secondActivity extends AppCompatActivity {

    EditText edit1, edit2, edit3;
    Button button;

    ListView listView;


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

        edit1 = findViewById(R.id.name);
        edit2 = findViewById(R.id.desigination);
        edit3 = findViewById(R.id.post);

        listView = findViewById(R.id.list_view);


        button = findViewById(R.id.list_button);
        button.setOnClickListener(new View.OnClickListener() {
            @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
            @Override
            public void onClick(View v) {

                String itemName = edit1.getText().toString();
                String itemDescription = edit2.getText().toString();

                List list = Collections.synchronizedList(new ArrayList());

                list.add(itemName);
                list.add(itemDescription);

                ArrayAdapter lists1 = new ArrayAdapter(secondActivity.this, android.R.layout.simple_list_item_1, list);
                listView.setAdapter(lists1);
                edit1.setText("");
                edit2.setText("");

            }

        });

    }

1 Ответ

0 голосов
/ 30 октября 2019

Не создавайте список каждый раз, когда нажимаете кнопку.

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

    edit1 = findViewById(R.id.name);
    edit2 = findViewById(R.id.desigination);
    edit3 = findViewById(R.id.post);

    listView = findViewById(R.id.list_view);

    List list = Collections.synchronizedList(new ArrayList());


    button = findViewById(R.id.list_button);
    button.setOnClickListener(new View.OnClickListener() {
        @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
        @Override
        public void onClick(View v) {

            String itemName = edit1.getText().toString();
            String itemDescription = edit2.getText().toString();

            list.add(itemName);
            list.add(itemDescription);

            ArrayAdapter lists1 = new ArrayAdapter(secondActivity.this, 
            android.R.layout.simple_list_item_1, list);
            listView.setAdapter(lists1);
            edit1.setText("");
            edit2.setText("");

        }

    });

}
...