同样的HTML,在WKWebView中显示的字体比UIWebView中的小。

无敌鲨鱼炮
  • 448

将UIWebView换成WKWebView后遇到的问题,不知道有没人遇到类似问题,希望可以分享下。

回复
阅读 10.4k
4 个回答

在后台返回的h5文本前再加一段h5就OK了:

NSString *headerString = @"<header><meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no'></header>";
[strongSelf.contentWebView loadHTMLString:[headerString stringByAppendingString:model.detail] baseURL:nil];

还有一种解决方法:使用用户脚本来注入 JavaScript
WKUserScript 允许在正文加载之前或之后注入到页面中。这个强大的功能允许在页面中操作网页内容。
NSHipsterWWDC 都讲得很清楚。

zhu455780739
  • 4
新手上路,请多包涵

我遇到过,同样都是iphone6.wkwebview和uiwebview的显示大小不一样,作为web前端,也不清楚是不是app那边出了什么问题,所以我每次都alert屏幕宽度来做适配。

WKWebView 可以通过配置文件设置字体大小:

//创建网页配置对象
WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init];
// 创建设置对象
WKPreferences *preference = [[WKPreferences alloc]init];
// 设置字体大小(最小的字体大小)
preference.minimumFontSize = 40;
// 设置偏好设置对象
config.preferences = preference;
// 创建WKWebView
WKWebView *webView = [[WKWebView alloc]initWithFrame:self.view.bounds  configuration:config];
宣传栏