复制持续/快速滚动,如 Chrome ios
Replicate persistent / fast scrolling like Chrome ios
所以我有一个使用 WKWebView 实现的 webview。滚动很好,但我有兴趣让它像 Chrome 应用程序一样运行。我真的不知道如何实现它。
我不知道他们是在搞乱动画持续时间、减速率还是什么。
我试过:
currentScrollView.decelerationRate = UIScrollViewDecelerationRateNormal;
currentScrollView.decelerationRate = UIScrollViewDecelerationRateFast;
没有真正注意到差异。我也在 Whosebug 上尝试了一些建议,但它似乎只是完全停止滚动动画。
另一种可能性是利用网络视图的 CSS 属性 并调用:
overflow-y: scroll;
-webkit-overflow-scrolling: touch;
真的不知道怎么称呼它。从我用于图像查看器的一些旧代码中,我将其修改如下,但没有任何效果:
NSString *css = [[NSString alloc] initWithFormat:@"%@", @"<!DOCTYPE html>"
"<html lang=\"ja\">"
"<head>"
"<meta charset=\"UTF-8\">"
"<style type=\"text/css\">"
"html{margin:0;padding:0;}"
"body {"
"overflow-y: scroll;"
"-webkit-overflow-scrolling: touch;"
"margin: 0;"
"padding: 0;"
"background: clear;"
"}"
"</style>"
"</head>"
"</html>"];
[self.webView evaluateJavaScript:css completionHandler:nil];
但我不是最擅长这种风格的修改。
有人有什么想法吗?建议?
我不关心 Apple 的批准,因为我不会提交我的应用程序,所以 hack、swizzle 等对我来说没问题。
谢谢。
所以它可能是我下面 post 中的两个组合,或者一个或另一个,但我让它工作以防有人感兴趣。
- (void)viewDidLoad {
[super viewDidLoad];
[self.webView.scrollView setDecelerationRate:UIScrollViewDecelerationRateNormal];
}
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView {
scrollView.decelerationRate = UIScrollViewDecelerationRateNormal;
}
注意:iOS9 上有一个错误会导致此问题。更多信息:
所以我有一个使用 WKWebView 实现的 webview。滚动很好,但我有兴趣让它像 Chrome 应用程序一样运行。我真的不知道如何实现它。
我不知道他们是在搞乱动画持续时间、减速率还是什么。
我试过:
currentScrollView.decelerationRate = UIScrollViewDecelerationRateNormal;
currentScrollView.decelerationRate = UIScrollViewDecelerationRateFast;
没有真正注意到差异。我也在 Whosebug 上尝试了一些建议,但它似乎只是完全停止滚动动画。
另一种可能性是利用网络视图的 CSS 属性 并调用:
overflow-y: scroll;
-webkit-overflow-scrolling: touch;
真的不知道怎么称呼它。从我用于图像查看器的一些旧代码中,我将其修改如下,但没有任何效果:
NSString *css = [[NSString alloc] initWithFormat:@"%@", @"<!DOCTYPE html>"
"<html lang=\"ja\">"
"<head>"
"<meta charset=\"UTF-8\">"
"<style type=\"text/css\">"
"html{margin:0;padding:0;}"
"body {"
"overflow-y: scroll;"
"-webkit-overflow-scrolling: touch;"
"margin: 0;"
"padding: 0;"
"background: clear;"
"}"
"</style>"
"</head>"
"</html>"];
[self.webView evaluateJavaScript:css completionHandler:nil];
但我不是最擅长这种风格的修改。
有人有什么想法吗?建议?
我不关心 Apple 的批准,因为我不会提交我的应用程序,所以 hack、swizzle 等对我来说没问题。
谢谢。
所以它可能是我下面 post 中的两个组合,或者一个或另一个,但我让它工作以防有人感兴趣。
- (void)viewDidLoad {
[super viewDidLoad];
[self.webView.scrollView setDecelerationRate:UIScrollViewDecelerationRateNormal];
}
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView {
scrollView.decelerationRate = UIScrollViewDecelerationRateNormal;
}
注意:iOS9 上有一个错误会导致此问题。更多信息: