Почему бы вам не создать подкласс UIScrollView для представления, отображающего изображение?Если вы это сделаете, это довольно просто: определите его размер, чтобы длина по горизонтали не превышала длину экрана.Вы также должны помнить, чтобы изменить это, если вы разрешите поворот устройства / представления в альбомную ориентацию.Предположим, что ширина вашего UIScrollView равна 320, вы должны сделать это:
CGSize scrollableSize = CGSizeMake(320, myScrollableHeight);
[myScrollView setContentSize:scrollableSize];
Где myScrollableHeight
- полная высота изображения.
Я никогда не использовал его, но если этоне работает, очевидно, есть метод, который вы можете предоставить для вашего класса UIScrollView, который вызывается всякий раз, когда пользователь пытается прокрутить, и вы можете просто не регулировать там X-координату:
float oldX; // make this ivar in your .h file
- (void)scrollViewDidScroll:(UIScrollView *)aScrollView
{
[aScrollView setContentOffset: CGPointMake(aScrollView.contentOffset.y, oldX)];
}