【问题标题】:WKWebView Not Loading URL in NSWindowWKWebView 未在 NSWindow 中加载 URL
【发布时间】:2020-11-14 09:35:05
【问题描述】:

XCode MacOS(不是 iOS)使用 WKWebView 在窗口中打开 URL:

@property (assign) IBOutlet NSView *webNSView;
@property (assign) IBOutlet WKWebView *webView;

- (void)windowDidLoad {
WKWebView *webView = [[WKWebView alloc] initWithFrame:self.webNSView.frame];
webView.navigationDelegate = self;
NSURL *nsurl=[NSURL URLWithString:@"https://google.com"];
NSURLRequest *nsrequest=[NSURLRequest requestWithURL:nsurl];
[webView loadRequest:nsrequest];
[self.webNSView addSubview:webView]; }

这工作正常。

我想使用 [self blankUrl] 发送一个空白网址;

我有这个:

-(void) blankUrl {
NSURL *nsurl=[NSURL URLWithString:@"about:blank"];
NSURLRequest *nsrequest=[NSURLRequest requestWithURL:nsurl];
[webView loadRequest:nsrequest];
}

但我收到错误:“未知接收器 'webView';您的意思是 'WebView'?”

更改为 WebView 会出现错误:“无法识别的选择器已发送到类。”

更改为 self.webView 将编译但不加载 url。

基本上,如何更新 WKWebView URL?

【问题讨论】:

    标签: objective-c xcode macos webview wkwebview


    【解决方案1】:

    windowDidLoad 中,您有一个名为webView 的局部变量,您需要初始化它,而不是属性。然后,您稍后尝试使用该属性(未初始化)。

    windowDidLoad的第一行改为...

    self.webView = [[WKWebView alloc] initWithFrame:self.webNSView.frame];
    

    ...在blankUrl 中也使用self.webView

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多