Как мне программно добавить несколько изображений в CardView в Android?

#android #android-layout #android-imageview #android-cardview #cardlayout

#Android #android-layout #android-imageview #android-cardview #cardlayout

Вопрос:

Я хотел бы программно создать ImageViews внутри списка CardViews RecyclerView в моем приложении. На данный момент у каждого CardView была кнопка, которая при onClick добавляет элемент в CardView в базу данных.

Я хотел бы заменить кнопку изображением галочки, чтобы указать пользователю, что рассматриваемый элемент был добавлен в базу данных. Я также хотел бы включить два других ImageView в добавленный элемент CardView: кнопку удаления и кнопку редактирования, чтобы позволить пользователю удалять или редактировать элемент соответственно.

Это то, что мне нужно будет сделать в моем пользовательском адаптере? Должен ли я создавать отдельный файл XML-макета с кнопками редактирования / удаления и раздувать этот макет в новом, программно созданном ImageView?

Я уже заменил изображение галочкой, используя метод setImageResource () в setOnClickListener() моего элемента, но я знаю, что это неправильное решение: это просто заменяет изображение в существующем ImageView.

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

1. Можете ли вы опубликовать какой-нибудь код, который вы пробовали, например, макет XML и класс адаптера?

Ответ №1:

  LayoutParams params = new LayoutParams(
                    LayoutParams.WRAP_CONTENT,
                    LayoutParams.WRAP_CONTENT
            );
  ImageView img = new ImageView(this);
  img.setLayoutParams(params);
  card.addview(img);
  

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

1. Спасибо за ваш код. Я уже пробовал что-то подобное, но продолжаю получать ошибки null object в ImageView.