UIWebView的调整高度,以适应内容(UIWebview resize height to fi

2019-09-03 02:19发布

我知道这已经被问了很多次,但我无法得到它的工作。 总之我的UIWebView拉动一些HTML具有无固定的高度(宽度总是相同的),我只想高度相应地改变。

我已经尝试了一些修正我已经在网上找到的,但我的问题是web视图会更改为正确的尺寸,但只短短的一秒钟,然后笔触回原来的大小。

我要指出的是,我的这一观点是由SEGUE调用,这是我能想到的唯一的事情是不同的! 我想知道如果代码工作,但是当SEGUE完成它的淡入淡出,翻转或不管它再重绘网页流量。

这里是我当前的代码(如我说我已经尝试了许多修正,包括其中大部分做同样的的Java版本),我也打了scalesPageToFit和srollEnabled外加几个故事板的蜱。

-(void)webViewDidFinishLoad:(UIWebView *)webView
{
    NSLog(@"Starting Size : %f", headerWebView.frame.size.height);

    headerWebView.scalesPageToFit = YES;
    headerWebView.scrollView.scrollEnabled = NO;
    CGRect frame = headerWebView.frame;

    frame.size.width = frame.size.width; // I used this to test, I put 200 in and it changes then flicks back too
    frame.size.height = 1;

    headerWebView.frame = frame;
    frame.size.height = headerWebView.scrollView.contentSize.height;
    headerWebView.frame = frame;

    NSLog(@"Finished Size : %f", headerWebView.frame.size.height);
}

日志说;

起始大小:176.000000成品尺寸:246.000000

任何人有一个想法,为什么会出现网页视图罚款只是足够长的时间,我注意到,然后“缩水”了?

Answer 1:

任何人有一个想法,为什么会出现网页视图罚款只是足够长的时间,我注意到,然后“缩水”了?

我会说,这是因为你是显示,因为它们发生的种种变化显示正常。 为什么不隐藏在视图的生命周期,甚至在webViewDidFinishLoading一些较早点的Web视图? 我从IB分享在可能提供进一步援助的情况下我的布局设置。 请告知,如果这有助于或是否需要额外的信息。 我使用的弹簧和支柱,而不是自动布局。 我会尝试这些方法,看看它是否适合你。

隐藏我的web视图数据加载阻止用户看到任何东西,直到我所有的设置/数据到位。

    NSString *path = [[NSBundle mainBundle] bundlePath];
    NSURL *baseURL = [NSURL fileURLWithPath:path];

    [webView setAlpha:0];
    [webView loadData:[dataString dataUsingEncoding:NSUTF8StringEncoding] MIMEType:@"text/html" textEncodingName:@"UTF-8"  baseURL:baseURL];

    [UIView animateWithDuration:0.1 animations:^{

        [webView setAlpha:1.0];

    } completion:nil];



文章来源: UIWebview resize height to fit content