Как отключить горизонтальный отскок UIWebView - PullRequest
5 голосов
/ 13 мая 2011

Простая проблема, у меня есть веб-просмотр, который должен содержать только изображение, чтобы пользователь мог увеличивать и уменьшать масштаб.Чтобы сохранить мой внешний вид, я хочу полностью отключить подпрыгивание в этом представлении, но все же разрешить прокрутку.Это решение работает для вертикального отскока, но как только я увеличу изображение до размера, большего, чем экран, горизонтальный отскок все еще возможен:

for (id subview in webView.subviews 
{
    if ( [[subview class] isSubclassOfClass:[UIScrollView class]] )
    {

        ((UIScrollView*) subview).bounces = NO;
        ((UIScrollView*) subview).alwaysBounceVertical = NO;
        ((UIScrollView*) subview).alwaysBounceHorizontal = NO;
        ((UIScrollView*) subview).bouncesZoom = NO;            
    }
}

Ответы [ 2 ]

11 голосов
/ 13 мая 2011

Следующий код помог нам прекратить подпрыгивать:

NSString* scriptToPreventBouncing = @"<script type=\"text/javascript\"> document.ontouchmove = function(e){ e.preventDefault(); } </script>";
NSString* footerHTML = @"<div>All rights reserved</div>";
[footer loadHTMLString: [scriptToPreventBouncing stringByAppendingString:footerHTML] baseURL:[NSURL URLWithString:@"http://somewebsite.com"]];

Я не уверен, отключит ли это масштабирование изображения.Но это должно остановить подпрыгивание.

7 голосов
/ 25 января 2012

В iOS 5 вы можете решить свою проблему следующим образом:

UIWebView *webView = [[UIWebView alloc] ....];

webView.scrollView.scrollEnabled = NO; 
webView.scrollView.bounces = NO;

ПРИМЕЧАНИЕ: это будет работать только на iOS5 и выше

...