controller.imageView = imageView;
Ничего особенного в этом нет. Единственное, что вам нужно сделать, это добавить представление в иерархию представлений. Представления могут иметь только одно суперпредставление, поэтому при добавлении его в новую иерархию представлений оно автоматически удаляется из старой иерархии представлений. Единственная хитрость, когда вы попадаете обратно в стек. Ожидаете ли вы, что представление все еще будет доступно в старом контроллере представления? (Не будет.)
В целом, я бы рекомендовал передавать параметры, а не фактическое представление (т. Е. Изображение и его преобразование). Это избавляет от любых проблем, поднимающихся или опускающихся в стеке, но в любом случае может работать.