Команда Web Academy подготовила руководство, в котором показана реализация изображения, которое изменяет размер в соответствии с высотой Navigation Bar c большим Title. Демо можно увидеть выше.
Перейдем же прямо к кодингу.
Объявим property в класс
Примечание: Это также может быть UIButton или все, что является подклассом UIView
Ваш дизайн уникален: добавьте структуру Constants с вашими кастомными размерами и отступами. Просто скопируйте код (написанный ниже) в ваш класс и измените значения констант в соответствии с вашим дизайном:
Примечание: Я рекомендую прочитать описание констант
a) Большой Navigation Bar

б) Малый Navigation Bar

Создайте метод начальной настройки вашего UI:
Примечание: Не забудьте вызвать этот метод.
Запустите проект и проверьте, нет ли ошибок в консоли, и отображается ли изображения правильно. Обратите внимание, что пока изображение не будет изменять размер.

Создайте метод, который будет изменять размер и перемещать изображение в Navigation Bar:
Коротко о том, как работает этот метод: размер изображения изменяется с помощью .scaledBy. А перемещение изображения, происходит с помощью .translatedBy, по таким правилам:
Добавьте делегатский метод UIScrollView и вызовите метод с предыдущего шага:
Запустите приложение и проверьте правильно ли изменяется размер картинки при прокрутке вниз/вверх:

Если вам нужно скрыть изображение из навигации, когда вы переходите на другой экран в стеке навигейшн контроллера, добавьте следующие методы:
Если вы хотите выполнить какое-то действие при нажатии на картинку, следуйте этому ответу.
You are done ?
. . .
Автор статьи: Tung Fam
Полный проект на Github.
Оригинальная статья: How to build resizing Image in Navigation Bar with Large Title