#java #android #android_studio #android_layout
С каждым нажатием кнопки "+ Новий елемент" llElement должен дублироваться. Не знаю как правильно описать именно этот процесс в activity. Должно примерно получиться так, как на скриншоте выделено красным. xml:
Ответы
Ответ 1
Если вы хотите сделать именно таким образом, то вынеситеВ отдельный xml файл. И добавляйте его или через include (в xml), либо так (программно): View v = LayoutInflater.from(YourActivity.this).inflate(item.xml, null) myContainerForViews.addView(v); myContainerForViews - пустой LinearLayout добавленный вместо удаленного. Причем ваши View лучше добавлять в ArrayList, чтобы потом иметь доступ к их элементам через views.get(position).findViewById(R.id.etElement). НО. Это не самое лучшее решение и не самая правильная организация кода. Рекомендую вам переделать всё под RecyclerView, в котором вы используете вашу разметку как item, и массив данных. Тогда добавление и обновление данных будет простым и элегантным: myList.add(new Item()); recycler.getAdapter().notifyDataSetChanged(); Но если вам просто "надо написать чтобы все работало" сработает и первый вариант. Только учитывайте, что при n-элементе ваши остальные View (и кнопка) уйдут за экран. Поэтому придется оборачивать все в ScrollView Ответ 2
Я бы предложил вам оформить этот участок программы в виде RecyclerView. Тогда добавление нового элемента будет выполняться через адаптер, и вы сможете считывать данные с этой ячейки, а не просто добавить ее на экран. Вот неплохой пример https://www.androidhive.info/2016/01/android-working-with-recycler-view/, но если что, вы без труда найдете кучу других.
Комментариев нет:
Отправить комментарий