美文网首页WKWebView
WKWebView加载显示问题

WKWebView加载显示问题

作者: Rayla_周周 | 来源:发表于2016-10-27 15:20 被阅读0次

    因为项目数据要求,加载的html数据量太大,用原始的UIWebView加载,导致内存暴涨————崩溃

    改用WKWebView,但是加载的时候页面的行高显示的是正确的,但是里面的数据一直显示不全;

      1》 WKWebView放置的位置,在加载cell的时候,直接放在cell的contentView

    2》  设置观察者

            [self.detailWebView.scrollView addObserver:self forKeyPath:@"contentSize" options:NSKeyValueObservingOptionNew context:nil];

    3》在观察方法中设置为WKWebView的frame

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

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

    self.detailWebView.frame = CGRectMake(0, 0, ScreenWidth, websize.height);

    [self.cellHeightArr replaceObjectAtIndex:1 withObject:@(websize.height)];

    NSIndexPath*index=[NSIndexPath indexPathForRow:0 inSection:self.saveCellArrM.count-1];

    [self.tableView reloadRowsAtIndexPaths:@[index] withRowAnimation:UITableViewRowAnimationNone];

    }

     3》 每次值改变的时候,重新设置加载cell,设置cell的高度

     4》 结论:cell的行高是页面内容的高度,可是在加载后,页面中的数据有时能显示完整,有时显示不完整


    解决办法:

    1》 在cell上加载一个scrollView,再将WKWebView加载到scrollView上,让后在每次加载cell的时候,设置scrollView的高度为页面的高度(最主要的就是不能将WKWebView直接放在cell上)

    2》其它的设置不变

    3》结论:哈哈哈,正常的加载显示。


    相关文章

      网友评论

        本文标题:WKWebView加载显示问题

        本文链接:https://www.haomeiwen.com/subject/kyfsuttx.html