Прежде всего, настройка высоты UIView (или любого из его подклассов) отрегулирует высоту от координаты origin.y вниз. Он не распространяется от центра.
Знаете ли вы размеры вашего изображения заранее? Если изображения появляются каждый раз в одном и том же порядке, вы можете просто указать размеры в массиве.
Если вы не знаете размеров или порядка изображений, вы можете использовать свойство size в UIImage, который вы помещаете в UIImageView. Это вернет вам CGSize, из которого вы можете взять высоту. Вам также необходимо обновить contentSize для UIScrollView.