关于UIwebView判断是否滑到底

来源:互联网 发布:ipad下载付费软件 编辑:程序博客网 时间:2024/06/10 12:00

在实际中,总有些奇奇怪怪的需求,今天在在一个群里就看到一个人问怎么判断UIWebView是否滑到了底部,闲来无事就研究了下;
通过看API,我们知道UIWebView是继承了的UIView

NS_CLASS_AVAILABLE_IOS(2_0) __TVOS_PROHIBITED @interface UIWebView : UIView <NSCoding, UIScrollViewDelegate> 

它实现了UIScrollViewDelegate的协议方法,所以我们可以去调用UIScrollView的代理方法;首先我们了解一下UIScrollView的两个属性,如下所示:
contentSize:代表你的scrollview可以上下滚动的范围
contentOffset:代表你的scrollview当前滚动时Y点的坐标

其实判断是否滑到底的原理就是:当前滚动的区域 -当前滚动位置的Y点 = 当前视图的高度;

- (void)scrollViewDidScroll:(UIScrollView *)scrollView{    if ((scrollView.contentSize.height - scrollView.contentOffset.y) == scrollView.frame.size.height) {        NSLog(@"到底了。。。。");    }}

定义的UiWebView要实现UIScrollView的协议

    webViews.delegate = self;    webViews.scrollView.delegate = self;    [webViews loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://lizhuang.iteye.com/blog/1517175"]]];    [self.view addSubview:webViews];

当然要添加它的协议的:

@interface ViewController ()<UIWebViewDelegate,UIScrollViewDelegate>

这样我们就能判断是否滑动到了底部了。

0 0