zoukankan      html  css  js  c++  java
  • iOS开发,获取动态web页面的高度

    一言不合就上代码:(在web的delegate方法中添加kvo观察者对象)

    #pragma mark UIWebViewDelegate

    第一步:

    -(void)webViewDidFinishLoad:(UIWebView *)webView

    {  

        其实这快最好再初始化一下web的高度,加载多个web的时候可能会有点用

        //_webView.frame = CGRectMake(0, 0, _scrollView.frame.size.width, WEB_VIEW_HEIGHT);

        //计算web加载完后的高度,刷新界面高度

        [webView.scrollView addObserver:self forKeyPath:@"contentSize" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld

                                 context:nil];

    }

    第二步:在回调方法里修改就好

    - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context {

        

        CGSize websize = [[change objectForKey:@"new"] CGSizeValue];

        _webView.frame = CGRectMake(0, 0, _scrollView.frame.size.width, websize.height);

    }

    别忘记在delloc里清除掉当前对象的监听

  • 相关阅读:
    iOS App之间跳转
    iOS 编码转换
    iOS文件类型判断
    iOS 运行时
    libqrencode生成二维码
    设置app的启动图
    根据字体计算CGRect
    iOS 英文学习
    libev 中IO事件循环解析
    libev 默认事件循环初始化的解析
  • 原文地址:https://www.cnblogs.com/dbaiyunyun/p/5663666.html
Copyright © 2011-2022 走看看