使用objective-c禁用UIWebView默认滚动行为

问题描述:

我知道您可以使用javascript来执行此操作

I know you can use a javascript to do this

<script type="text/javascript">
touchMove = function(event) {
event.preventDefault();
}

有没有办法使用objective-c做同样的事情?

Is there a way to do the same using objective-c?

试试这个......

try this...

UIView * v = [[webView subviews] lastObject];
[v setScrollEnabled:NO];
[v bounces:NO];

编辑:根据以下评论添加原始答案的支票

Added checks to original answer based on comment below

UIView * v = [[webView subviews] lastObject];
if([v isKindOfClass:[UIScrollView class] ]) {
    if ([v respondsToSelector:@selector(setScrollEnabled]) {
        [v setScrollEnabled:NO];
    }
    if ([v respondsToSelector:@selector(bounces)]) {
        [v bounces:NO];
    }
}