Я хочу создать флажок при нажатии кнопки
I want to make it so every time someone type something in the editText and click the button the text comes up which it does it my code but I also want to add a checkbox next to it. How Can I add the checkbox every time the button is pressed. I would also want to make it possible to add more than 1 right now it overwrites itself when you make 2. final TextView textViewPrint; Button btn_print; final EditText editTextType; final CheckBox checkbox; textViewPrint = findViewById(R.id.print_text); btn_print =findViewById(R.id.button_add); editTextType = findViewById(R.id.test_textEdit); checkbox = findViewById(R.id.checkBox); btn_print.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { textViewPrint.setText(editTextType.getText().toString()) ; editTextType.setText(""); } });
Что я уже пробовал:
Я пробовал искать ответы в google / stack overflow. Я новичок, поэтому мне не хватает многих базовых понятий.
David Crow
checkbox = findViewById(R.id.checkBox);
Если это возвращает ненулевое значение, то я предполагаю, что у вас уже есть
Checkbox
виджет на макете. если да, то что именно вы хотите сделать с флажком?
Sebassstian
Я хочу создать флажок onClick, поэтому, когда кнопка нажата, я хочу, чтобы она создала флажок.
David Crow
Вы пробовали что-то вроде:
Checkbox cb = new Checkbox(); cb.setId(###); // optional
Если вы хотите отобразить его, вам также нужно добавить его в представление.
Просто из любопытства, зачем создавать этот элемент управления во время выполнения, а не в файле макета?
Sebassstian
Я хочу составить список дел, чтобы, когда пользователь наберет, например, play piano в editText, мое приложение добавило play piano и флажок, который они могут нажать, чтобы закончить его. У меня также возникли проблемы с тем, чтобы добавить более 1 задачи. Мой текст должен быть перезаписан последним. Например, если я написал "играй на пианино" и добавил его, то иди в спортзал. Тот, что в спортзале, перепишет предыдущий. Я не за компьютером прямо сейчас я собираюсь попробовать если он работает завтра большое спасибо
David Crow
Вам нужно поставить ListView
в основном макете. Создайте макет "строки" для каждой строки в этом разделе. ListView
. В этой строке макета поставьте CheckBox
контроль и TextView
контроль. Создайте для него пользовательский адаптер (например, производный от ArrayAdapter
). В переходнике getView()
метод, раздуйте макет строки, а затем назначьте значения элементам управления checkbox и text. В доме пуговицы onClick()
обработчик, просто добавьте новый элемент в пользовательский адаптер, а затем вызовите адаптер notifyDataSetChanged()
метод для того, чтобы он появился в списке.
Это очень распространенная вещь, поэтому более подробные примеры можно найти в сети в изобилии.