当 Web 视图内容调整大小时确定 UIWebView 高度

Posted

技术标签:

【中文标题】当 Web 视图内容调整大小时确定 UIWebView 高度【英文标题】:determine UIWebView height when web view content resized 【发布时间】:2017-01-24 06:52:34 【问题描述】:

我正在使用UIWebView 在我的视图控制器中加载一个小部件我想在小部件内容大小更改时调整框架。

当一个选项被选中两次时,我下面的代码返回原始高度

这是我的代码

-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType


    CGRect frame1 = _widget_VW.frame;
    frame1.size.height = 60;
    _widget_VW.frame = frame1;
    [_widget_VW sizeToFit];

    if (navigationType == UIWebViewNavigationTypeLinkClicked) 
        NSLog(@"User tapped a link.");
        [_widget_VW sizeToFit];

        [_widget_VW setSuppressesIncrementalRendering:YES];

        CGRect frame = _widget_VW.frame;
        frame.size.height = 1;
        _widget_VW.frame = frame;
        CGSize fittingSize = [_widget_VW sizeThatFits:CGSizeZero];
        frame.size = fittingSize;
        _widget_VW.frame = frame;

        _VW_activity.hidden = NO;
        [_activityindicator startAnimating];
        [self performSelector:@selector(setup_DATA) withObject:_activityindicator afterDelay:0.01];

        return YES;
    

    return YES;

【问题讨论】:

【参考方案1】:

使用这个。 它对我有用。

#pragma mark - UIWebViewDelegate methods
- (void)webViewDidFinishLoad:(UIWebView *)aWebView 
    CGRect frame = aWebView.frame;
    frame.size.height = 1;
    aWebView.frame = frame;
    CGSize fittingSize = [aWebView sizeThatFits:CGSizeZero];
    frame.size = fittingSize;
    aWebView.frame = frame;

【讨论】:

以上是关于当 Web 视图内容调整大小时确定 UIWebView 高度的主要内容,如果未能解决你的问题,请参考以下文章