size.width
для UIScrollView
- это ширина представления на вашем устройстве, а не ширина содержимого в представлении прокрутки (которое будет scrollView.contentSize.width
).
Это означает, что если "ваш вид" находится за пределами UIScrollView
, вам нужна ширина прокрутки, но если ваш вид находится внутри вида прокрутки, вам нужна ширина контента.
Обратите внимание на нижнюю часть экрана / скриншот Google, который вы предоставили. Заметьте, как нет горизонтальной прокрутки? В этом случае ширина содержимого представления прокрутки равна ширине представления прокрутки, поэтому она отлично работает. Верхнее изображение / изображение переполнения стека имеет горизонтальную полосу прокрутки. Поэтому ширина содержимого представления прокрутки больше ширины представления прокрутки.
Краткий ответ: Попробуйте установить для своего вида значение scrollView.contentSize.width
, а не scrollView.frame.size.width