1

以下是在 Yosemite 10.10.1 上使用 Safari 8.0.2 时两个按钮的http://google.com外观(这是预期行为):

苹果浏览器

这是使用 Xcode 6.1.1 和 Xcode 6.2 (6C95a) 在 WKWebView 中呈现的网站的相同部分(这不是预期的行为):

wkwebview

其他一些带有奇怪伪影的 WKWebView 渲染示例:

  • Google - 按钮和右上角。
  • 维基百科- 美元金额附近的复选框。
  • Reddit - 左上角标志和上/下箭头。

这是我在一个空的顶部添加的代码Cocoa Application

视图控制器.h

@property (strong, nonatomic) WKWebView* webView;

视图控制器.m

-(void)loadView {
    [super loadView];
    self.webView = [[WKWebView alloc] init];
    self.view = self.webView;    
}

- (void)viewDidLoad {
    [super viewDidLoad];
    NSURL* url = [NSURL URLWithString:@"http://google.com"];
    NSURLRequest* req = [NSURLRequest requestWithURL:url];
    [self.webView loadRequest:req];
}

background-image使用(CSS)时似乎会发生这种情况。例如 Reddit 的 logo via web inspector 显示:background-image: url(sprite-reddit.JqPSSyjOUZE.png);. 也许因为那是一个精灵,这里是sprite-reddit.JqPSSyjOUZE.png的链接。

4

1 回答 1

0

我找到了解决方案 - 初始化时WKWebView,您需要使用frame参数对其进行初始化:

webView = WKWebView(frame: self.view.bounds)

此示例只是将其设置为现有窗口的边界。

于 2015-05-16T05:57:51.193 回答