В этой строке:
parentIngredientLayout.removeView((View)
v.getParent());
Вы пытаетесь удалить родителя removeChildIngredient ImageButton, который, вероятно, является parentIngredientLayout, что, я думаю, не то, что вы хотите,
Вы могли быпопробуйте это:
parentIngredientLayout.
removeView(rowView);
Но в вашей реализации вы можете столкнуться с проблемами, когда добавите несколько ингредиентов, поскольку вы устанавливаете новый onClickListener для каждого нового ингредиента, а ImageButton удаляет только последний из вас.добавили (последний набор onClickListener),
Вместо этого вы можете использовать List / RecyclerView или искать другую реализацию, например.поместите ImageButton внутри раздуваемого макета, чтобы в каждом добавляемом макете была одна кнопка «Удалить»,
Затем вы должны заменить findViewById вашего ImageButton на rowView.findViewById
И эта строка должнаостаться без изменений
parentIngredientLayout.removeView((View) v.getParent());