首页 > 解决方案 > WKWebView 不会减速滚动(它只是在我离开手指时停止)

问题描述

我试图在里面显示一个 HTML 页面WKWebView,但是,当我滚动时,滚动并没有减速,它只是停止:

在此处输入图像描述

当我尝试滚动超出上限时问题并不明显,但是当我滚动内容时,平滑滚动/减速不起作用。有时,当我向下滚动并按住时,它也可以像内容结束一样,虽然内容在底部继续(可以在视频的某个位置看到,但这里是一个静态图像以进行澄清,请看底部截图):

在此处输入图像描述

我没有任何嵌套的滚动视图等。就WKWebView在我的视图控制器内部(只需忽略导航栏后面的重叠,我稍后会设置它的样式):

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    CGRect frame = self.view.bounds;
    frame.origin.y -= 64;
    frame.size.height += 64;
    WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init];
    webView = [[WKWebView alloc] initWithFrame:frame configuration:config];
    webView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
    [self.view addSubview:webView];
    [self reloadData]; //it just loads the static HTML page into the web view
}

什么可能导致这种行为,我该如何预防?

标签: iosscrolluiscrollviewwkwebviewios12

解决方案


我解决了这个问题:它与它本身无关WKWebView。这是由于该特定 HTML 文件中的一些脚本/样式。我已将主要(文本、图像等)部分放入一个干净的 HTML 文件中,问题就消失了。


推荐阅读