I only needed to scale the imageContentView to between 1 and 2, so increased contentView frame to double width and height of scrollView, constrained using leading, top, width & height for contentView & imageView. Told scrollView to limit min/max zoom. Gestures now fire in all the right places.