如何启用水平滚动和UIWebView的禁用垂直滚动?(How do I enable horizon

2019-07-28 21:24发布

我的UIWebView不应该允许垂直滚动。 然而,水平滚动应成为可能。

我一直在寻找通过的文件,也没有找到任何线索。

下面的代码同时禁止滚动的方向,但我只希望关闭垂直:

myWebView.scrollView.scrollEnabled = NO;

我该如何解决这个问题?

Answer 1:

启用水平滚动和禁用垂直滚动:

myWebView.scrollView.delegate = self;
[myWebView.scrollView setShowsVerticalScrollIndicator:NO];

-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    if (scrollView.contentOffset.y > 0  ||  scrollView.contentOffset.y < 0 )
        scrollView.contentOffset = CGPointMake(scrollView.contentOffset.x, 0);
}

二号线将有隐藏垂直滚动指标。 检查是否“scrollView.contentOffset.y <零”当您尝试向下滚动将禁用弹跳。 你也可以这样做:scrollView.bounces = NO做同样的事情! 通过看拉玛饶的答案我可以告诉大家,他的代码将重置到滚动视图(0.0)你尝试垂直滚动的瞬间,从而使你远离你的水平位置,这是不好的。

启用垂直滚动和禁用水平滚动:

myWebView.scrollView.delegate = self;
[myWebview.scrollView setShowsHorizontalScrollIndicator:NO];

-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    if (scrollView.contentOffset.x > 0)
        scrollView.contentOffset = CGPointMake(0, scrollView.contentOffset.y);
}

和平



Answer 2:

为了让全工作,写:

 webview.scrollView.delegate = self;
    [webview.scrollView setShowsHorizontalScrollIndicator:NO];

}

-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    if (scrollView.contentOffset.x > 0)
        scrollView.contentOffset = CGPointMake(0, scrollView.contentOffset.y);
    if (scrollView.contentOffset.x < 0)
        scrollView.contentOffset = CGPointMake(0, scrollView.contentOffset.y);
}

我刚才说的最后两行,因为当你写它像pnizzle一样,你不能从右边到左边,但仍从左至右滚动。

祝好运



Answer 3:

-(void) scrollViewDidScroll:(UIScrollView *)scrollView{
    if (scrollView.contentOffset.y>web.frame.origin.x) {
        scrollView.contentOffset = CGPointMake(0, 0);
    }
}

通过这种方式,我们可以解决这个问题。 就拿下面一个全球性的滚动视图对象:

UIScrollView* scrollView =web.scrollView;

集合委托的滚动视图,然后-(void) scrollViewDidScroll:(UIScrollView *)scrollView将被调用,就可以得到结果。 我检查两个版本(的iOS 5和iOS 4.2)



Answer 4:

离开scrollEnabled == YES。 滚动视图将根据内容大小限制滚动。 如果只允许水平滚动,设置contentSize是这样的:

scrollView.contentSize = CGSizeMake(1000, scrollView.bounds.size.height);

宽度应与任何被滚动滚动视图内的宽度。



文章来源: How do I enable horizontal scrolling and disable vertical scrolling in UIWebview?